<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>xilsecure: Xilsecure RSA Server APIs</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">xilsecure
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;"
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__xsecure__rsa__server__apis.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Xilsecure RSA Server APIs</div>  </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_secure___rsa_oaep_param.html">XSecure_RsaOaepParam</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input and output parameters for RSA Optimal Asymmetric Encryption Padding scheme.  <a href="struct_x_secure___rsa_oaep_param.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_secure___rsa_key.html">XSecure_RsaKey</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input parameters pointers for RSA.  <a href="struct_x_secure___rsa_key.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The RSA driver instance data structure.  <a href="struct_x_secure___rsa.html#details">More...</a><br/></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga4d44ea80e5d3318fa89cfb81c19a8bab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga4d44ea80e5d3318fa89cfb81c19a8bab">XSECURE_RSA_MAX_MSG_SIZE_IN_BYTES</a></td></tr>
<tr class="memdesc:ga4d44ea80e5d3318fa89cfb81c19a8bab"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum message size in bytes.  <a href="#ga4d44ea80e5d3318fa89cfb81c19a8bab">More...</a><br/></td></tr>
<tr class="separator:ga4d44ea80e5d3318fa89cfb81c19a8bab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1cf3919ee718dd93e02bb36a43e55cba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga1cf3919ee718dd93e02bb36a43e55cba">XSECURE_RSA_MAX_PS_SIZE_IN_BYTES</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#ga4d44ea80e5d3318fa89cfb81c19a8bab">XSECURE_RSA_MAX_MSG_SIZE_IN_BYTES</a>)</td></tr>
<tr class="memdesc:ga1cf3919ee718dd93e02bb36a43e55cba"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum PS size in bytes.  <a href="#ga1cf3919ee718dd93e02bb36a43e55cba">More...</a><br/></td></tr>
<tr class="separator:ga1cf3919ee718dd93e02bb36a43e55cba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59042ddf231be62c14ab4a7c62802f0b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga59042ddf231be62c14ab4a7c62802f0b">XSECURE_RSA_MAX_DB_SIZE_IN_BYTES</a></td></tr>
<tr class="memdesc:ga59042ddf231be62c14ab4a7c62802f0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum DB size in bytes.  <a href="#ga59042ddf231be62c14ab4a7c62802f0b">More...</a><br/></td></tr>
<tr class="separator:ga59042ddf231be62c14ab4a7c62802f0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa653fc0677efc4a466e7f5360dbc2abe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaa653fc0677efc4a466e7f5360dbc2abe">externC</a>&#160;&#160;&#160;extern</td></tr>
<tr class="memdesc:gaa653fc0677efc4a466e7f5360dbc2abe"><td class="mdescLeft">&#160;</td><td class="mdescRight">For compilation in C++.  <a href="#gaa653fc0677efc4a466e7f5360dbc2abe">More...</a><br/></td></tr>
<tr class="separator:gaa653fc0677efc4a466e7f5360dbc2abe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef98b03d932368574ec1123184b9a9e4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__zynqmp__apis.html#ga347aecc336477793453c4d4d7ff4883a">XSECURE_RSA_3072_SIZE_WORDS</a> * 4U)</td></tr>
<tr class="memdesc:gaef98b03d932368574ec1123184b9a9e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA default key size in bytes.  <a href="#gaef98b03d932368574ec1123184b9a9e4">More...</a><br/></td></tr>
<tr class="separator:gaef98b03d932368574ec1123184b9a9e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8430c1d49dac67e602bf5d2353391a12"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga8430c1d49dac67e602bf5d2353391a12">XSECURE_RSA_KEY_GEN_SIZE_IN_WORDS</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> / 4U)</td></tr>
<tr class="memdesc:ga8430c1d49dac67e602bf5d2353391a12"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA key generation size in words.  <a href="#ga8430c1d49dac67e602bf5d2353391a12">More...</a><br/></td></tr>
<tr class="separator:ga8430c1d49dac67e602bf5d2353391a12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7208f94ae70d33d48b34e75b434c0073"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga7208f94ae70d33d48b34e75b434c0073">XSECURE_RSA_MAX_KEY_GEN_SUPPORT</a>&#160;&#160;&#160;(2U)</td></tr>
<tr class="memdesc:ga7208f94ae70d33d48b34e75b434c0073"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum keys that needs to be generated.  <a href="#ga7208f94ae70d33d48b34e75b434c0073">More...</a><br/></td></tr>
<tr class="separator:ga7208f94ae70d33d48b34e75b434c0073"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7d26ce58d6af4dd85a0035b344866a6a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga7d26ce58d6af4dd85a0035b344866a6a">XSECURE_RSA_KEY_STATUS_WAIT</a>&#160;&#160;&#160;(1U)</td></tr>
<tr class="memdesc:ga7d26ce58d6af4dd85a0035b344866a6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA key status wait.  <a href="#ga7d26ce58d6af4dd85a0035b344866a6a">More...</a><br/></td></tr>
<tr class="separator:ga7d26ce58d6af4dd85a0035b344866a6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga87e50dc58dc742b7bb0a503d9da9010f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga87e50dc58dc742b7bb0a503d9da9010f">XSECURE_RSA_2048_QUANT_SIZE</a>&#160;&#160;&#160;(5U)</td></tr>
<tr class="memdesc:ga87e50dc58dc742b7bb0a503d9da9010f"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum quant size for 2048 bit key.  <a href="#ga87e50dc58dc742b7bb0a503d9da9010f">More...</a><br/></td></tr>
<tr class="separator:ga87e50dc58dc742b7bb0a503d9da9010f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga94a80f11f44f1b6bacbfdc15a255f79f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga94a80f11f44f1b6bacbfdc15a255f79f">XSECURE_RSA_3072_QUANT_SIZE</a>&#160;&#160;&#160;(2U)</td></tr>
<tr class="memdesc:ga94a80f11f44f1b6bacbfdc15a255f79f"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum quant size for 3072 bit key.  <a href="#ga94a80f11f44f1b6bacbfdc15a255f79f">More...</a><br/></td></tr>
<tr class="separator:ga94a80f11f44f1b6bacbfdc15a255f79f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f2670f692577853698a7590066e4448"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga5f2670f692577853698a7590066e4448">XSECURE_RSA_4096_QUANT_SIZE</a>&#160;&#160;&#160;(1U)</td></tr>
<tr class="memdesc:ga5f2670f692577853698a7590066e4448"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA maximum quant size for 4096 bit key.  <a href="#ga5f2670f692577853698a7590066e4448">More...</a><br/></td></tr>
<tr class="separator:ga5f2670f692577853698a7590066e4448"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga792bca395c9fc54f30431664005fb637"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga792bca395c9fc54f30431664005fb637">XSECURE_RSA_PUBLIC_EXPONENT</a>&#160;&#160;&#160;(0x10001U)</td></tr>
<tr class="memdesc:ga792bca395c9fc54f30431664005fb637"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA public exponent value.  <a href="#ga792bca395c9fc54f30431664005fb637">More...</a><br/></td></tr>
<tr class="separator:ga792bca395c9fc54f30431664005fb637"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac68769cb4d2f865843c2e77b2b5c3fbd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gac68769cb4d2f865843c2e77b2b5c3fbd">XSECURE_RSA_PUB_EXP_SIZE</a>&#160;&#160;&#160;(4U)</td></tr>
<tr class="memdesc:gac68769cb4d2f865843c2e77b2b5c3fbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA public exponent size.  <a href="#gac68769cb4d2f865843c2e77b2b5c3fbd">More...</a><br/></td></tr>
<tr class="separator:gac68769cb4d2f865843c2e77b2b5c3fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabef6161746737e2b747db7961bddfe3f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gabef6161746737e2b747db7961bddfe3f">XSECURE_KEY_PAIR_GEN_POLL_INTERVAL</a>&#160;&#160;&#160;(100U)</td></tr>
<tr class="memdesc:gabef6161746737e2b747db7961bddfe3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Key pair generation poll interval.  <a href="#gabef6161746737e2b747db7961bddfe3f">More...</a><br/></td></tr>
<tr class="separator:gabef6161746737e2b747db7961bddfe3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga38e1b28752d6069910cf90fb422e9cca"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga38e1b28752d6069910cf90fb422e9cca">XSECURE_ECDSA_RSA_SOFT_RESET</a>&#160;&#160;&#160;(0xF1200040U)</td></tr>
<tr class="memdesc:ga38e1b28752d6069910cf90fb422e9cca"><td class="mdescLeft">&#160;</td><td class="mdescRight">ECDSA/RSA soft reset address.  <a href="#ga38e1b28752d6069910cf90fb422e9cca">More...</a><br/></td></tr>
<tr class="separator:ga38e1b28752d6069910cf90fb422e9cca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacba3eaa97a1cf39d9022dddcaded8e1b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gacba3eaa97a1cf39d9022dddcaded8e1b">XSECURE_RSA_SIZE_IN_BYTES</a>&#160;&#160;&#160;(512U)</td></tr>
<tr class="memdesc:gacba3eaa97a1cf39d9022dddcaded8e1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">512 bytes for 4096 bit data  <a href="#gacba3eaa97a1cf39d9022dddcaded8e1b">More...</a><br/></td></tr>
<tr class="separator:gacba3eaa97a1cf39d9022dddcaded8e1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3889ef0cd21d5b09ffa60be16ce88140"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga3889ef0cd21d5b09ffa60be16ce88140">XSECURE_PRIME_FACTOR_P_SIZE</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td></tr>
<tr class="memdesc:ga3889ef0cd21d5b09ffa60be16ce88140"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of first prime factor(P)  <a href="#ga3889ef0cd21d5b09ffa60be16ce88140">More...</a><br/></td></tr>
<tr class="separator:ga3889ef0cd21d5b09ffa60be16ce88140"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaea22c8d9e551a75beb81099592d63ada"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaea22c8d9e551a75beb81099592d63ada">XSECURE_PRIME_FACTOR_Q_SIZE</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td></tr>
<tr class="memdesc:gaea22c8d9e551a75beb81099592d63ada"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of first prime factor(Q)  <a href="#gaea22c8d9e551a75beb81099592d63ada">More...</a><br/></td></tr>
<tr class="separator:gaea22c8d9e551a75beb81099592d63ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga127677299bd2c7d46a4cf8941e91ccc3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga127677299bd2c7d46a4cf8941e91ccc3">XSECURE_PRIME_FACTOR_MAX_P_SIZE</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__qmode__apis.html#gacba3eaa97a1cf39d9022dddcaded8e1b">XSECURE_RSA_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td></tr>
<tr class="memdesc:ga127677299bd2c7d46a4cf8941e91ccc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">256 bytes size of first prime factor(P)  <a href="#ga127677299bd2c7d46a4cf8941e91ccc3">More...</a><br/></td></tr>
<tr class="separator:ga127677299bd2c7d46a4cf8941e91ccc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae905dfaa14a252d9b935b0f5ce8e7583"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae905dfaa14a252d9b935b0f5ce8e7583">XSECURE_PRIME_FACTOR_MAX_Q_SIZE</a>&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__qmode__apis.html#gacba3eaa97a1cf39d9022dddcaded8e1b">XSECURE_RSA_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td></tr>
<tr class="memdesc:gae905dfaa14a252d9b935b0f5ce8e7583"><td class="mdescLeft">&#160;</td><td class="mdescRight">256 bytes size of first prime factor(Q)  <a href="#gae905dfaa14a252d9b935b0f5ce8e7583">More...</a><br/></td></tr>
<tr class="separator:gae905dfaa14a252d9b935b0f5ce8e7583"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga471ea882e22eda21835226bbd7f5f5fe"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga471ea882e22eda21835226bbd7f5f5fe">XSECURE_RSA_PUBLIC_EXPO_SIZE</a>&#160;&#160;&#160;(4U)</td></tr>
<tr class="memdesc:ga471ea882e22eda21835226bbd7f5f5fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of public key expo.  <a href="#ga471ea882e22eda21835226bbd7f5f5fe">More...</a><br/></td></tr>
<tr class="separator:ga471ea882e22eda21835226bbd7f5f5fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae58e8fcd45d583887e693c6569900161"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae58e8fcd45d583887e693c6569900161">XSECURE_RSA_BYTE_PAD_LENGTH</a>&#160;&#160;&#160;(3U)</td></tr>
<tr class="memdesc:gae58e8fcd45d583887e693c6569900161"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS Byte Padding.  <a href="#gae58e8fcd45d583887e693c6569900161">More...</a><br/></td></tr>
<tr class="separator:gae58e8fcd45d583887e693c6569900161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3946b65de00d2d5d0d829b8bade3c748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga3946b65de00d2d5d0d829b8bade3c748">XSECURE_RSA_T_PAD_LENGTH</a>&#160;&#160;&#160;(19U)</td></tr>
<tr class="memdesc:ga3946b65de00d2d5d0d829b8bade3c748"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding.  <a href="#ga3946b65de00d2d5d0d829b8bade3c748">More...</a><br/></td></tr>
<tr class="separator:ga3946b65de00d2d5d0d829b8bade3c748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad840b41d180c177652a07d9f64759b38"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad840b41d180c177652a07d9f64759b38">XSECURE_RSA_BYTE_PAD1</a>&#160;&#160;&#160;(0X00U)</td></tr>
<tr class="memdesc:gad840b41d180c177652a07d9f64759b38"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#gad840b41d180c177652a07d9f64759b38">More...</a><br/></td></tr>
<tr class="separator:gad840b41d180c177652a07d9f64759b38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga26615ce99391eb47a32748d154a256b0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga26615ce99391eb47a32748d154a256b0">XSECURE_RSA_BYTE_PAD2</a>&#160;&#160;&#160;(0X01U)</td></tr>
<tr class="memdesc:ga26615ce99391eb47a32748d154a256b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#ga26615ce99391eb47a32748d154a256b0">More...</a><br/></td></tr>
<tr class="separator:ga26615ce99391eb47a32748d154a256b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga92e8b443f7a35f7648b3e03c992365e4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga92e8b443f7a35f7648b3e03c992365e4">XSECURE_RSA_BYTE_PAD3</a>&#160;&#160;&#160;(0XFFU)</td></tr>
<tr class="memdesc:ga92e8b443f7a35f7648b3e03c992365e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#ga92e8b443f7a35f7648b3e03c992365e4">More...</a><br/></td></tr>
<tr class="separator:ga92e8b443f7a35f7648b3e03c992365e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae602b8815f7d462cb8d71acd1518cc16"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>&#160;&#160;&#160;(0x82U)</td></tr>
<tr class="memdesc:gae602b8815f7d462cb8d71acd1518cc16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid Argument.  <a href="#gae602b8815f7d462cb8d71acd1518cc16">More...</a><br/></td></tr>
<tr class="separator:gae602b8815f7d462cb8d71acd1518cc16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga491f98d6cff7af27e53a60b8d50706ea"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga491f98d6cff7af27e53a60b8d50706ea">XSECURE_RSA_STATE_MISMATCH_ERROR</a>&#160;&#160;&#160;(0x84U)</td></tr>
<tr class="memdesc:ga491f98d6cff7af27e53a60b8d50706ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">State mismatch.  <a href="#ga491f98d6cff7af27e53a60b8d50706ea">More...</a><br/></td></tr>
<tr class="separator:ga491f98d6cff7af27e53a60b8d50706ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae655880142d336ed6515f196e68a4074"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae655880142d336ed6515f196e68a4074">XSECURE_TIMEOUT_MAX</a>&#160;&#160;&#160;(0x1FFFFFU)</td></tr>
<tr class="memdesc:gae655880142d336ed6515f196e68a4074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Recommended software timeout.  <a href="#gae655880142d336ed6515f196e68a4074">More...</a><br/></td></tr>
<tr class="separator:gae655880142d336ed6515f196e68a4074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06a22adced7435767b04a4ed7db6461c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga06a22adced7435767b04a4ed7db6461c">SIZEOF_INT_IN_BYTES</a>&#160;&#160;&#160;(0x4U)</td></tr>
<tr class="memdesc:ga06a22adced7435767b04a4ed7db6461c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of integer om bytes.  <a href="#ga06a22adced7435767b04a4ed7db6461c">More...</a><br/></td></tr>
<tr class="separator:ga06a22adced7435767b04a4ed7db6461c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f0529979a66b7619ea517a83788794a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga5f0529979a66b7619ea517a83788794a">XSECURE_RSA_ECDSA_ZEROIZE_ERROR</a>&#160;&#160;&#160;(0x80U)</td></tr>
<tr class="memdesc:ga5f0529979a66b7619ea517a83788794a"><td class="mdescLeft">&#160;</td><td class="mdescRight">for RSA zeroization Error  <a href="#ga5f0529979a66b7619ea517a83788794a">More...</a><br/></td></tr>
<tr class="separator:ga5f0529979a66b7619ea517a83788794a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae6abb189863af8fdcc377b2a92080865"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae6abb189863af8fdcc377b2a92080865">XSECURE_RSA_MAX_BUFF</a>&#160;&#160;&#160;(6U)</td></tr>
<tr class="memdesc:gae6abb189863af8fdcc377b2a92080865"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA RAM Write Buffers.  <a href="#gae6abb189863af8fdcc377b2a92080865">More...</a><br/></td></tr>
<tr class="separator:gae6abb189863af8fdcc377b2a92080865"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadd18fc8e8c833a9b50703479655a131a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gadd18fc8e8c833a9b50703479655a131a">XSECURE_RSA_MAX_RD_WR_CNT</a>&#160;&#160;&#160;(22U)</td></tr>
<tr class="memdesc:gadd18fc8e8c833a9b50703479655a131a"><td class="mdescLeft">&#160;</td><td class="mdescRight">No of writes or reads to RSA RAM buffers.  <a href="#gadd18fc8e8c833a9b50703479655a131a">More...</a><br/></td></tr>
<tr class="separator:gadd18fc8e8c833a9b50703479655a131a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga143c9f60ab09cc9145dcd03ad720957c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga143c9f60ab09cc9145dcd03ad720957c">XSECURE_RSA_RAM_RES_Q</a>&#160;&#160;&#160;(5U)</td></tr>
<tr class="memdesc:ga143c9f60ab09cc9145dcd03ad720957c"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit for RSA RAM Result(Q)  <a href="#ga143c9f60ab09cc9145dcd03ad720957c">More...</a><br/></td></tr>
<tr class="separator:ga143c9f60ab09cc9145dcd03ad720957c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaff1f1cf3b0d2fd6ec4db3c38c5a846b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaff1f1cf3b0d2fd6ec4db3c38c5a846b1">XSECURE_RSA_DATA_VALUE_ERROR</a>&#160;&#160;&#160;(0x2U)</td></tr>
<tr class="memdesc:gaff1f1cf3b0d2fd6ec4db3c38c5a846b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">for RSA private decryption data should be lesser than modulus  <a href="#gaff1f1cf3b0d2fd6ec4db3c38c5a846b1">More...</a><br/></td></tr>
<tr class="separator:gaff1f1cf3b0d2fd6ec4db3c38c5a846b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3637356df5720621bbd9924fa45a8d8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae3637356df5720621bbd9924fa45a8d8">XSECURE_HASH_TYPE_SHA3</a>&#160;&#160;&#160;(48U)</td></tr>
<tr class="memdesc:gae3637356df5720621bbd9924fa45a8d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">SHA-3 hash size.  <a href="#gae3637356df5720621bbd9924fa45a8d8">More...</a><br/></td></tr>
<tr class="separator:gae3637356df5720621bbd9924fa45a8d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad56c1ad7d5fadefa4f0fb466854b7036"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad56c1ad7d5fadefa4f0fb466854b7036">XSECURE_FSBL_SIG_SIZE</a>&#160;&#160;&#160;(512U)</td></tr>
<tr class="memdesc:gad56c1ad7d5fadefa4f0fb466854b7036"><td class="mdescLeft">&#160;</td><td class="mdescRight">FSBL signature size.  <a href="#gad56c1ad7d5fadefa4f0fb466854b7036">More...</a><br/></td></tr>
<tr class="separator:gad56c1ad7d5fadefa4f0fb466854b7036"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga07736a55ec2f9d8242a46ee20fc9f7b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga07736a55ec2f9d8242a46ee20fc9f7b6">XSECURE_RSA_2048_KEY_SIZE</a>&#160;&#160;&#160;(2048U/8U)</td></tr>
<tr class="memdesc:ga07736a55ec2f9d8242a46ee20fc9f7b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 2048 key size.  <a href="#ga07736a55ec2f9d8242a46ee20fc9f7b6">More...</a><br/></td></tr>
<tr class="separator:ga07736a55ec2f9d8242a46ee20fc9f7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga59620f1b6f6bde84528a793de12385c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga59620f1b6f6bde84528a793de12385c5">XSECURE_RSA_3072_KEY_SIZE</a>&#160;&#160;&#160;(3072U/8U)</td></tr>
<tr class="memdesc:ga59620f1b6f6bde84528a793de12385c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 3072 key size.  <a href="#ga59620f1b6f6bde84528a793de12385c5">More...</a><br/></td></tr>
<tr class="separator:ga59620f1b6f6bde84528a793de12385c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6ff2e0197483048fcc9e7c52416750c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga6ff2e0197483048fcc9e7c52416750c8">XSECURE_RSA_4096_KEY_SIZE</a>&#160;&#160;&#160;(4096U/8U)</td></tr>
<tr class="memdesc:ga6ff2e0197483048fcc9e7c52416750c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 4096 key size.  <a href="#ga6ff2e0197483048fcc9e7c52416750c8">More...</a><br/></td></tr>
<tr class="separator:ga6ff2e0197483048fcc9e7c52416750c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab5e03185e5083dafd48c34ec3860f13b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gab5e03185e5083dafd48c34ec3860f13b">XSECURE_RSA_2048_SIZE_WORDS</a>&#160;&#160;&#160;(64)</td></tr>
<tr class="memdesc:gab5e03185e5083dafd48c34ec3860f13b"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 2048 Size in words.  <a href="#gab5e03185e5083dafd48c34ec3860f13b">More...</a><br/></td></tr>
<tr class="separator:gab5e03185e5083dafd48c34ec3860f13b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga347aecc336477793453c4d4d7ff4883a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga347aecc336477793453c4d4d7ff4883a">XSECURE_RSA_3072_SIZE_WORDS</a>&#160;&#160;&#160;(96)</td></tr>
<tr class="memdesc:ga347aecc336477793453c4d4d7ff4883a"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 3072 Size in words.  <a href="#ga347aecc336477793453c4d4d7ff4883a">More...</a><br/></td></tr>
<tr class="separator:ga347aecc336477793453c4d4d7ff4883a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaf42b952c1d1cab97ba23e4c1a5f5ae6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaaf42b952c1d1cab97ba23e4c1a5f5ae6">XSECURE_RSA_4096_SIZE_WORDS</a>&#160;&#160;&#160;(128U)</td></tr>
<tr class="memdesc:gaaf42b952c1d1cab97ba23e4c1a5f5ae6"><td class="mdescLeft">&#160;</td><td class="mdescRight">RSA 4096 Size in words.  <a href="#gaaf42b952c1d1cab97ba23e4c1a5f5ae6">More...</a><br/></td></tr>
<tr class="separator:gaaf42b952c1d1cab97ba23e4c1a5f5ae6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga54df4ba49a902c189e6b829f70bf4c12"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga54df4ba49a902c189e6b829f70bf4c12">XSECURE_RSA_RAM_EXPO</a>&#160;&#160;&#160;(0U)</td></tr>
<tr class="memdesc:ga54df4ba49a902c189e6b829f70bf4c12"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit for RSA RAM Exponent  <a href="#ga54df4ba49a902c189e6b829f70bf4c12">More...</a><br/></td></tr>
<tr class="separator:ga54df4ba49a902c189e6b829f70bf4c12"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafda03a0526dc76f9c6b01005ef59d12c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gafda03a0526dc76f9c6b01005ef59d12c">XSECURE_RSA_RAM_MOD</a>&#160;&#160;&#160;(1U)</td></tr>
<tr class="memdesc:gafda03a0526dc76f9c6b01005ef59d12c"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit for RSA RAM modulus  <a href="#gafda03a0526dc76f9c6b01005ef59d12c">More...</a><br/></td></tr>
<tr class="separator:gafda03a0526dc76f9c6b01005ef59d12c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaeb1c90322fbfab2d67199e5a1b7221ac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaeb1c90322fbfab2d67199e5a1b7221ac">XSECURE_RSA_RAM_DIGEST</a>&#160;&#160;&#160;(2U)</td></tr>
<tr class="memdesc:gaeb1c90322fbfab2d67199e5a1b7221ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit for RSA RAM Digest  <a href="#gaeb1c90322fbfab2d67199e5a1b7221ac">More...</a><br/></td></tr>
<tr class="separator:gaeb1c90322fbfab2d67199e5a1b7221ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae1c8324e032b5c9d15f811018284b13e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae1c8324e032b5c9d15f811018284b13e">XSECURE_RSA_RAM_RES_Y</a>&#160;&#160;&#160;(4U)</td></tr>
<tr class="memdesc:gae1c8324e032b5c9d15f811018284b13e"><td class="mdescLeft">&#160;</td><td class="mdescRight">bit for RSA RAM Result(Y)  <a href="#gae1c8324e032b5c9d15f811018284b13e">More...</a><br/></td></tr>
<tr class="separator:gae1c8324e032b5c9d15f811018284b13e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae58e8fcd45d583887e693c6569900161"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae58e8fcd45d583887e693c6569900161">XSECURE_RSA_BYTE_PAD_LENGTH</a>&#160;&#160;&#160;(3U)</td></tr>
<tr class="memdesc:gae58e8fcd45d583887e693c6569900161"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS Byte Padding.  <a href="#gae58e8fcd45d583887e693c6569900161">More...</a><br/></td></tr>
<tr class="separator:gae58e8fcd45d583887e693c6569900161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3946b65de00d2d5d0d829b8bade3c748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga3946b65de00d2d5d0d829b8bade3c748">XSECURE_RSA_T_PAD_LENGTH</a>&#160;&#160;&#160;(19U)</td></tr>
<tr class="memdesc:ga3946b65de00d2d5d0d829b8bade3c748"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding.  <a href="#ga3946b65de00d2d5d0d829b8bade3c748">More...</a><br/></td></tr>
<tr class="separator:ga3946b65de00d2d5d0d829b8bade3c748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad840b41d180c177652a07d9f64759b38"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad840b41d180c177652a07d9f64759b38">XSECURE_RSA_BYTE_PAD1</a>&#160;&#160;&#160;(0X00U)</td></tr>
<tr class="memdesc:gad840b41d180c177652a07d9f64759b38"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#gad840b41d180c177652a07d9f64759b38">More...</a><br/></td></tr>
<tr class="separator:gad840b41d180c177652a07d9f64759b38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga26615ce99391eb47a32748d154a256b0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga26615ce99391eb47a32748d154a256b0">XSECURE_RSA_BYTE_PAD2</a>&#160;&#160;&#160;(0X01U)</td></tr>
<tr class="memdesc:ga26615ce99391eb47a32748d154a256b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#ga26615ce99391eb47a32748d154a256b0">More...</a><br/></td></tr>
<tr class="separator:ga26615ce99391eb47a32748d154a256b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga92e8b443f7a35f7648b3e03c992365e4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga92e8b443f7a35f7648b3e03c992365e4">XSECURE_RSA_BYTE_PAD3</a>&#160;&#160;&#160;(0XFFU)</td></tr>
<tr class="memdesc:ga92e8b443f7a35f7648b3e03c992365e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">PKCS T Padding Byte.  <a href="#ga92e8b443f7a35f7648b3e03c992365e4">More...</a><br/></td></tr>
<tr class="separator:ga92e8b443f7a35f7648b3e03c992365e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae602b8815f7d462cb8d71acd1518cc16"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>&#160;&#160;&#160;(0x82U)</td></tr>
<tr class="memdesc:gae602b8815f7d462cb8d71acd1518cc16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid Argument.  <a href="#gae602b8815f7d462cb8d71acd1518cc16">More...</a><br/></td></tr>
<tr class="separator:gae602b8815f7d462cb8d71acd1518cc16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga491f98d6cff7af27e53a60b8d50706ea"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga491f98d6cff7af27e53a60b8d50706ea">XSECURE_RSA_STATE_MISMATCH_ERROR</a>&#160;&#160;&#160;(0x84U)</td></tr>
<tr class="memdesc:ga491f98d6cff7af27e53a60b8d50706ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">State mismatch.  <a href="#ga491f98d6cff7af27e53a60b8d50706ea">More...</a><br/></td></tr>
<tr class="separator:ga491f98d6cff7af27e53a60b8d50706ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga24e04211fc631eaf86b412fc9abe7b1c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga24e04211fc631eaf86b412fc9abe7b1c">XSecure_RsaKeyOpState</a> { <a class="el" href="group__xsecure__rsa__server__apis.html#gga24e04211fc631eaf86b412fc9abe7b1cac6ccb393b8497af5e79d534f528abe87">XSECURE_RSA_KEY_DEFAULT_STATE</a> = 0,
<a class="el" href="group__xsecure__rsa__server__apis.html#gga24e04211fc631eaf86b412fc9abe7b1caa55c1eab894644e0f5b3410506fdf043">XSECURE_RSA_KEY_INIT_STATE</a>,
<a class="el" href="group__xsecure__rsa__server__apis.html#gga24e04211fc631eaf86b412fc9abe7b1caf4a0e971bca81263da9108061c8ff7c8">XSECURE_RSA_KEY_GEN_STATE</a>,
<a class="el" href="group__xsecure__rsa__server__apis.html#gga24e04211fc631eaf86b412fc9abe7b1ca217467319e81eb7e6182a65a4a0d26e6">XSECURE_RSA_KEY_READY_STATE</a>
 }</td></tr>
<tr class="separator:ga24e04211fc631eaf86b412fc9abe7b1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae6588655f860a271678b5a24946f0aa2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae6588655f860a271678b5a24946f0aa2">XSecure_RsaKeyStatus</a> { <a class="el" href="group__xsecure__rsa__server__apis.html#ggae6588655f860a271678b5a24946f0aa2ad9950e80f504bd868c4243acf7840dd8">XSECURE_RSA_KEY_FREE</a> = 0,
<a class="el" href="group__xsecure__rsa__server__apis.html#ggae6588655f860a271678b5a24946f0aa2ac4e3192cdb9e2c4efdc27756aeb4b9a9">XSECURE_RSA_KEY_AVAIL</a>
 }</td></tr>
<tr class="separator:gae6588655f860a271678b5a24946f0aa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga82451ab88c04cf87f08d6ca4a6e500fe"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga82451ab88c04cf87f08d6ca4a6e500fe">XSecure_RsaState</a> { <a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500fea880658a3ea1baa2ef3a03304705e7d7f">XSECURE_RSA_UNINITIALIZED</a> = 0x0,
<a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065">XSECURE_RSA_INITIALIZED</a>,
<a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500fea880658a3ea1baa2ef3a03304705e7d7f">XSECURE_RSA_UNINITIALIZED</a> = 0,
<a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065">XSECURE_RSA_INITIALIZED</a>
 }</td></tr>
<tr class="memdesc:ga82451ab88c04cf87f08d6ca4a6e500fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used for setting the state of RSA operation.  <a href="group__xsecure__rsa__server__apis.html#ga82451ab88c04cf87f08d6ca4a6e500fe">More...</a><br/></td></tr>
<tr class="separator:ga82451ab88c04cf87f08d6ca4a6e500fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac58931a8d38bdc9dc4398b99c61d6977"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gac58931a8d38bdc9dc4398b99c61d6977">XSecure_RsaOps</a> { <a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977a6cea5b8237a7ef2b4e973ee824e8ba6c">XSECURE_RSA_SIGN_ENC</a> = 0x0,
<a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977ab636361ce27fcaf256dacda0c41e29cd">XSECURE_RSA_SIGN_DEC</a>
 }</td></tr>
<tr class="memdesc:gac58931a8d38bdc9dc4398b99c61d6977"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used for selecting the RSA operation.  <a href="group__xsecure__rsa__server__apis.html#gac58931a8d38bdc9dc4398b99c61d6977">More...</a><br/></td></tr>
<tr class="separator:gac58931a8d38bdc9dc4398b99c61d6977"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gab519747faf9ccf8e016d20e5713838c9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gab519747faf9ccf8e016d20e5713838c9">XSecure_RsaOaepEncrypt</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, <a class="el" href="struct_x_secure___rsa_oaep_param.html">XSecure_RsaOaepParam</a> *OaepParam)</td></tr>
<tr class="memdesc:gab519747faf9ccf8e016d20e5713838c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function encodes the given message using RSA OAEP and encrypts it.  <a href="#gab519747faf9ccf8e016d20e5713838c9">More...</a><br/></td></tr>
<tr class="separator:gab519747faf9ccf8e016d20e5713838c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7fe869dab6a634c2866f9ec26ee8cec0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga7fe869dab6a634c2866f9ec26ee8cec0">XSecure_RsaOaepDecrypt</a> (XSecure_RsaPrivKey *PrivKey, <a class="el" href="struct_x_secure___rsa_oaep_param.html">XSecure_RsaOaepParam</a> *OaepParam)</td></tr>
<tr class="memdesc:ga7fe869dab6a634c2866f9ec26ee8cec0"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function decodes the given message and decrypts it using RSA OAEP.  <a href="#ga7fe869dab6a634c2866f9ec26ee8cec0">More...</a><br/></td></tr>
<tr class="separator:ga7fe869dab6a634c2866f9ec26ee8cec0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga164469228a4eea6357072fee975418de"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga164469228a4eea6357072fee975418de">XSecure_AddRsaKeyPairGenerationToScheduler</a> (void)</td></tr>
<tr class="memdesc:ga164469228a4eea6357072fee975418de"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function adds periodic task of generation RSA key pair to scheduler.  <a href="#ga164469228a4eea6357072fee975418de">More...</a><br/></td></tr>
<tr class="separator:ga164469228a4eea6357072fee975418de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc66468fdd66a559fa567f631fbae91c"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gabc66468fdd66a559fa567f631fbae91c">XSecure_GetRsaKeyInUseIdx</a> (void)</td></tr>
<tr class="memdesc:gabc66468fdd66a559fa567f631fbae91c"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function returns RSA key inuse index.  <a href="#gabc66468fdd66a559fa567f631fbae91c">More...</a><br/></td></tr>
<tr class="separator:gabc66468fdd66a559fa567f631fbae91c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga547d58774dd7e1821688203999e1b5e2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga547d58774dd7e1821688203999e1b5e2">XSecure_RsaDestroyKeyInUse</a> (void)</td></tr>
<tr class="memdesc:ga547d58774dd7e1821688203999e1b5e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function destroys the RSA key in use.  <a href="#ga547d58774dd7e1821688203999e1b5e2">More...</a><br/></td></tr>
<tr class="separator:ga547d58774dd7e1821688203999e1b5e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga76632037ef8961e99b8b9b210d5f75f1"><td class="memItemLeft" align="right" valign="top">XSecure_RsaPrivKey *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga76632037ef8961e99b8b9b210d5f75f1">XSecure_GetRsaPrivateKey</a> (u32 RsaIdx)</td></tr>
<tr class="memdesc:ga76632037ef8961e99b8b9b210d5f75f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function returns RSA private key.  <a href="#ga76632037ef8961e99b8b9b210d5f75f1">More...</a><br/></td></tr>
<tr class="separator:ga76632037ef8961e99b8b9b210d5f75f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa40ad2688c9e7d2e756a29fa88bfaa27"><td class="memItemLeft" align="right" valign="top">XSecure_RsaPubKey *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaa40ad2688c9e7d2e756a29fa88bfaa27">XSecure_GetRsaPublicKey</a> (u32 RsaIdx)</td></tr>
<tr class="memdesc:gaa40ad2688c9e7d2e756a29fa88bfaa27"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function returns RSA public key.  <a href="#gaa40ad2688c9e7d2e756a29fa88bfaa27">More...</a><br/></td></tr>
<tr class="separator:gaa40ad2688c9e7d2e756a29fa88bfaa27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaed24e77892a61d31d934ec519c9a8d92"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaed24e77892a61d31d934ec519c9a8d92">XSecure_RsaInitialize_64Bit</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u64 Mod, u64 ModExt, u64 ModExpo)</td></tr>
<tr class="memdesc:gaed24e77892a61d31d934ec519c9a8d92"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function initializes a a <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> structure with the default values located at a 64-bit address required for operating the RSA cryptographic engine.  <a href="#gaed24e77892a61d31d934ec519c9a8d92">More...</a><br/></td></tr>
<tr class="separator:gaed24e77892a61d31d934ec519c9a8d92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga097e8ed2f4933286ea5ef93210572b6b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga097e8ed2f4933286ea5ef93210572b6b">XSecure_RsaInitialize</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u8 *Mod, u8 *ModExt, u8 *ModExpo)</td></tr>
<tr class="memdesc:ga097e8ed2f4933286ea5ef93210572b6b"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function initializes a a <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> structure with the default values required for operating the RSA cryptographic engine.  <a href="#ga097e8ed2f4933286ea5ef93210572b6b">More...</a><br/></td></tr>
<tr class="separator:ga097e8ed2f4933286ea5ef93210572b6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88c72694ec8259484002620958682dde"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit</a> (const u64 Signature, const u64 Hash, u32 HashLen)</td></tr>
<tr class="memdesc:ga88c72694ec8259484002620958682dde"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function verifies the RSA decrypted data located at a 64-bit address provided is either matching with the provided expected hash by taking care of PKCS padding.  <a href="#ga88c72694ec8259484002620958682dde">More...</a><br/></td></tr>
<tr class="separator:ga88c72694ec8259484002620958682dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafbbbb29f6e16f26aa9e648fba575b444"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gafbbbb29f6e16f26aa9e648fba575b444">XSecure_RsaSignVerification</a> (const u8 *Signature, const u8 *Hash, u32 HashLen)</td></tr>
<tr class="memdesc:gafbbbb29f6e16f26aa9e648fba575b444"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function verifies the RSA decrypted data provided is either matching with the provided expected hash by taking care of PKCS padding.  <a href="#gafbbbb29f6e16f26aa9e648fba575b444">More...</a><br/></td></tr>
<tr class="separator:gafbbbb29f6e16f26aa9e648fba575b444"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc7c87fceab6593e002f7e3b9e15fccc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u64 Input, u32 Size, u64 Result)</td></tr>
<tr class="memdesc:gafc7c87fceab6593e002f7e3b9e15fccc"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function handles the RSA encryption for data available at 64-bit address with the public key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function.  <a href="#gafc7c87fceab6593e002f7e3b9e15fccc">More...</a><br/></td></tr>
<tr class="separator:gafc7c87fceab6593e002f7e3b9e15fccc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaec27a8c75f48094d78c14c2a77bc4564"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaec27a8c75f48094d78c14c2a77bc4564">XSecure_RsaPublicEncrypt</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u8 *Input, u32 Size, u8 *Result)</td></tr>
<tr class="memdesc:gaec27a8c75f48094d78c14c2a77bc4564"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function handles the RSA encryption with the public key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function.  <a href="#gaec27a8c75f48094d78c14c2a77bc4564">More...</a><br/></td></tr>
<tr class="separator:gaec27a8c75f48094d78c14c2a77bc4564"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga955d5211bd63a9325ec0a93f9c49eaef"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u64 Input, u32 Size, u64 Result)</td></tr>
<tr class="memdesc:ga955d5211bd63a9325ec0a93f9c49eaef"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function handles the RSA decryption for data available at 64-bit address with the private key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function.  <a href="#ga955d5211bd63a9325ec0a93f9c49eaef">More...</a><br/></td></tr>
<tr class="separator:ga955d5211bd63a9325ec0a93f9c49eaef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac9580b4adbe4854231a0101d89046189"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gac9580b4adbe4854231a0101d89046189">XSecure_RsaPrivateDecrypt</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u8 *Input, u32 Size, u8 *Result)</td></tr>
<tr class="memdesc:gac9580b4adbe4854231a0101d89046189"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function handles the RSA decryption with the private key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function.  <a href="#gac9580b4adbe4854231a0101d89046189">More...</a><br/></td></tr>
<tr class="separator:gac9580b4adbe4854231a0101d89046189"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad16ad6c530d0f3f8ed31e0c29ed634c5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad16ad6c530d0f3f8ed31e0c29ed634c5">XSecure_RsaCfgInitialize</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr)</td></tr>
<tr class="memdesc:gad16ad6c530d0f3f8ed31e0c29ed634c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function stores the base address of RSA core registers.  <a href="#gad16ad6c530d0f3f8ed31e0c29ed634c5">More...</a><br/></td></tr>
<tr class="separator:gad16ad6c530d0f3f8ed31e0c29ed634c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c38edd112fb7b6799153ab9eabba178"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation</a> (<a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr, u64 Input, u64 Result, <a class="el" href="group__xsecure__rsa__server__apis.html#gac58931a8d38bdc9dc4398b99c61d6977">XSecure_RsaOps</a> RsaOp, u32 KeySize)</td></tr>
<tr class="memdesc:ga3c38edd112fb7b6799153ab9eabba178"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function handles the Public encryption and private decryption of RSA operations with provided inputs.  <a href="#ga3c38edd112fb7b6799153ab9eabba178">More...</a><br/></td></tr>
<tr class="separator:ga3c38edd112fb7b6799153ab9eabba178"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c621f0e66a73464aefc9c725cb1b2b1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga7c621f0e66a73464aefc9c725cb1b2b1">XSecure_RsaZeroize</a> (const <a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *InstancePtr)</td></tr>
<tr class="memdesc:ga7c621f0e66a73464aefc9c725cb1b2b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function clears whole RSA memory space.  <a href="#ga7c621f0e66a73464aefc9c725cb1b2b1">More...</a><br/></td></tr>
<tr class="separator:ga7c621f0e66a73464aefc9c725cb1b2b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad533296d3fabf1afb69312994476a8cf"><td class="memItemLeft" align="right" valign="top">u8 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad533296d3fabf1afb69312994476a8cf">XSecure_RsaGetTPadding</a> (void)</td></tr>
<tr class="memdesc:gad533296d3fabf1afb69312994476a8cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function returns PKCS padding as per the silicon version.  <a href="#gad533296d3fabf1afb69312994476a8cf">More...</a><br/></td></tr>
<tr class="separator:gad533296d3fabf1afb69312994476a8cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf5b1250865b33d073498f0d29816d664"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaf5b1250865b33d073498f0d29816d664">XSecure_RsaEcdsaZeroizeAndVerifyRam</a> (u32 BaseAddress)</td></tr>
<tr class="memdesc:gaf5b1250865b33d073498f0d29816d664"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function clears and verifies whole RSA or ECDSA memory space.  <a href="#gaf5b1250865b33d073498f0d29816d664">More...</a><br/></td></tr>
<tr class="separator:gaf5b1250865b33d073498f0d29816d664"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga987514bb3cfd057697b78f0d7b17321d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga987514bb3cfd057697b78f0d7b17321d">XSecure_RsaIpiHandler</a> (XPlmi_Cmd *Cmd)</td></tr>
<tr class="memdesc:ga987514bb3cfd057697b78f0d7b17321d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function calls respective IPI handler based on the API_ID.  <a href="#ga987514bb3cfd057697b78f0d7b17321d">More...</a><br/></td></tr>
<tr class="separator:ga987514bb3cfd057697b78f0d7b17321d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Control Register</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrp51793cbea2ebce2243b8f2115ce2db60"></a>Control Register opcode definitions </p>
</td></tr>
<tr class="memitem:gaafa59a9f17f72541503918edc46b049a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaafa59a9f17f72541503918edc46b049a">XSECURE_RSA_CONTROL_EXP</a>&#160;&#160;&#160;(0x01U)</td></tr>
<tr class="memdesc:gaafa59a9f17f72541503918edc46b049a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exponentiation Opcode.  <a href="#gaafa59a9f17f72541503918edc46b049a">More...</a><br/></td></tr>
<tr class="separator:gaafa59a9f17f72541503918edc46b049a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf6aa7128fa94bf8080ab386fbad49019"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaf6aa7128fa94bf8080ab386fbad49019">XSECURE_RSA_CONTROL_EXP_PRE</a>&#160;&#160;&#160;(0x05U)</td></tr>
<tr class="memdesc:gaf6aa7128fa94bf8080ab386fbad49019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expo.  <a href="#gaf6aa7128fa94bf8080ab386fbad49019">More...</a><br/></td></tr>
<tr class="separator:gaf6aa7128fa94bf8080ab386fbad49019"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Config registers values</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrp942002fe83ab325fd7dd9356ca4156ee"></a>CFG0 is for Qsel and multiplication passes CFG1 is for Mont digits CFG2 is for location size CFG5 is for No.of groups </p>
</td></tr>
<tr class="memitem:gad2c0edbea8d67db9377cd12a22645aa0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gad2c0edbea8d67db9377cd12a22645aa0">XSECURE_ECDSA_RSA_CFG0_4096_VALUE</a>&#160;&#160;&#160;(0x0000006BU)</td></tr>
<tr class="memdesc:gad2c0edbea8d67db9377cd12a22645aa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG0 4096 value.  <a href="#gad2c0edbea8d67db9377cd12a22645aa0">More...</a><br/></td></tr>
<tr class="separator:gad2c0edbea8d67db9377cd12a22645aa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab809f2cf302a694e97151c15f1ecd178"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gab809f2cf302a694e97151c15f1ecd178">XSECURE_ECDSA_RSA_CFG1_4096_VALUE</a>&#160;&#160;&#160;(0x00000081U)</td></tr>
<tr class="memdesc:gab809f2cf302a694e97151c15f1ecd178"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG1 4096 value.  <a href="#gab809f2cf302a694e97151c15f1ecd178">More...</a><br/></td></tr>
<tr class="separator:gab809f2cf302a694e97151c15f1ecd178"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5424da4f0e694d048bf1958cac68d912"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga5424da4f0e694d048bf1958cac68d912">XSECURE_ECDSA_RSA_CFG2_4096_VALUE</a>&#160;&#160;&#160;(0x00000016U)</td></tr>
<tr class="memdesc:ga5424da4f0e694d048bf1958cac68d912"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG2 4096 value.  <a href="#ga5424da4f0e694d048bf1958cac68d912">More...</a><br/></td></tr>
<tr class="separator:ga5424da4f0e694d048bf1958cac68d912"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1bb16e915f8ae8d239e5828517eebdb0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga1bb16e915f8ae8d239e5828517eebdb0">XSECURE_ECDSA_RSA_CFG5_4096_VALUE</a>&#160;&#160;&#160;(0x00000015U)</td></tr>
<tr class="memdesc:ga1bb16e915f8ae8d239e5828517eebdb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG3 4096 value.  <a href="#ga1bb16e915f8ae8d239e5828517eebdb0">More...</a><br/></td></tr>
<tr class="separator:ga1bb16e915f8ae8d239e5828517eebdb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga441252e98483a66e42885babef4a3a4f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga441252e98483a66e42885babef4a3a4f">XSECURE_ECDSA_RSA_CFG0_3072_VALUE</a>&#160;&#160;&#160;(0x000000A0U)</td></tr>
<tr class="memdesc:ga441252e98483a66e42885babef4a3a4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG0 3072 value.  <a href="#ga441252e98483a66e42885babef4a3a4f">More...</a><br/></td></tr>
<tr class="separator:ga441252e98483a66e42885babef4a3a4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaca2741b6c05e9b8d34814c8da41b9094"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gaca2741b6c05e9b8d34814c8da41b9094">XSECURE_ECDSA_RSA_CFG1_3072_VALUE</a>&#160;&#160;&#160;(0x00000061U)</td></tr>
<tr class="memdesc:gaca2741b6c05e9b8d34814c8da41b9094"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG1 3072 value.  <a href="#gaca2741b6c05e9b8d34814c8da41b9094">More...</a><br/></td></tr>
<tr class="separator:gaca2741b6c05e9b8d34814c8da41b9094"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadc343c3b1b289869f9d80c16d11e8296"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gadc343c3b1b289869f9d80c16d11e8296">XSECURE_ECDSA_RSA_CFG2_3072_VALUE</a>&#160;&#160;&#160;(0x00000016U)</td></tr>
<tr class="memdesc:gadc343c3b1b289869f9d80c16d11e8296"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG2 3072 value.  <a href="#gadc343c3b1b289869f9d80c16d11e8296">More...</a><br/></td></tr>
<tr class="separator:gadc343c3b1b289869f9d80c16d11e8296"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabc91f9d925d1a698ea47efd143ee76fc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gabc91f9d925d1a698ea47efd143ee76fc">XSECURE_ECDSA_RSA_CFG5_3072_VALUE</a>&#160;&#160;&#160;(0x00000010U)</td></tr>
<tr class="memdesc:gabc91f9d925d1a698ea47efd143ee76fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG3 3072 value.  <a href="#gabc91f9d925d1a698ea47efd143ee76fc">More...</a><br/></td></tr>
<tr class="separator:gabc91f9d925d1a698ea47efd143ee76fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f74d8b1fdd3cb62e6b42f94477baea2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga3f74d8b1fdd3cb62e6b42f94477baea2">XSECURE_ECDSA_RSA_CFG0_2048_VALUE</a>&#160;&#160;&#160;(0x00000016U)</td></tr>
<tr class="memdesc:ga3f74d8b1fdd3cb62e6b42f94477baea2"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG0 2048 value.  <a href="#ga3f74d8b1fdd3cb62e6b42f94477baea2">More...</a><br/></td></tr>
<tr class="separator:ga3f74d8b1fdd3cb62e6b42f94477baea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae86c78b20bfdfe28377fae54d4359bb5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gae86c78b20bfdfe28377fae54d4359bb5">XSECURE_ECDSA_RSA_CFG1_2048_VALUE</a>&#160;&#160;&#160;(0x00000041U)</td></tr>
<tr class="memdesc:gae86c78b20bfdfe28377fae54d4359bb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG1 2048 value.  <a href="#gae86c78b20bfdfe28377fae54d4359bb5">More...</a><br/></td></tr>
<tr class="separator:gae86c78b20bfdfe28377fae54d4359bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga428d127a4c7ca3cb3f9ca6c5f598926b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga428d127a4c7ca3cb3f9ca6c5f598926b">XSECURE_ECDSA_RSA_CFG2_2048_VALUE</a>&#160;&#160;&#160;(0x00000016U)</td></tr>
<tr class="memdesc:ga428d127a4c7ca3cb3f9ca6c5f598926b"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG2 2048 value.  <a href="#ga428d127a4c7ca3cb3f9ca6c5f598926b">More...</a><br/></td></tr>
<tr class="separator:ga428d127a4c7ca3cb3f9ca6c5f598926b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga657535fb0fdef8833089462fb0001198"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga657535fb0fdef8833089462fb0001198">XSECURE_ECDSA_RSA_CFG5_2048_VALUE</a>&#160;&#160;&#160;(0x0000000AU)</td></tr>
<tr class="memdesc:ga657535fb0fdef8833089462fb0001198"><td class="mdescLeft">&#160;</td><td class="mdescRight">CFG3 2048 value.  <a href="#ga657535fb0fdef8833089462fb0001198">More...</a><br/></td></tr>
<tr class="separator:ga657535fb0fdef8833089462fb0001198"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
RSA status Register</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpe485e6335f6b844ad0c993a33eb51bdb"></a>The Status Register(SR) indicates the current state of RSA device.</p>
<p>Status Register Bit Definition </p>
</td></tr>
<tr class="memitem:gab2f3464839888fbb08885a9edfa3de1e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#gab2f3464839888fbb08885a9edfa3de1e">XSECURE_RSA_STATUS_DONE</a>&#160;&#160;&#160;(0x1U)</td></tr>
<tr class="memdesc:gab2f3464839888fbb08885a9edfa3de1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation Done.  <a href="#gab2f3464839888fbb08885a9edfa3de1e">More...</a><br/></td></tr>
<tr class="separator:gab2f3464839888fbb08885a9edfa3de1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2a14eba16b0398959800e6d638c63447"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__xsecure__rsa__server__apis.html#ga2a14eba16b0398959800e6d638c63447">XSECURE_RSA_STATUS_ERROR</a>&#160;&#160;&#160;(0x4U)</td></tr>
<tr class="memdesc:ga2a14eba16b0398959800e6d638c63447"><td class="mdescLeft">&#160;</td><td class="mdescRight">Error.  <a href="#ga2a14eba16b0398959800e6d638c63447">More...</a><br/></td></tr>
<tr class="separator:ga2a14eba16b0398959800e6d638c63447"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gaa653fc0677efc4a466e7f5360dbc2abe"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define externC&#160;&#160;&#160;extern</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>For compilation in C++. </p>

</div>
</div>
<a class="anchor" id="ga06a22adced7435767b04a4ed7db6461c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SIZEOF_INT_IN_BYTES&#160;&#160;&#160;(0x4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Size of integer om bytes. </p>

</div>
</div>
<a class="anchor" id="ga3f74d8b1fdd3cb62e6b42f94477baea2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG0_2048_VALUE&#160;&#160;&#160;(0x00000016U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG0 2048 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga441252e98483a66e42885babef4a3a4f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG0_3072_VALUE&#160;&#160;&#160;(0x000000A0U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG0 3072 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gad2c0edbea8d67db9377cd12a22645aa0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG0_4096_VALUE&#160;&#160;&#160;(0x0000006BU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG0 4096 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gae86c78b20bfdfe28377fae54d4359bb5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG1_2048_VALUE&#160;&#160;&#160;(0x00000041U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG1 2048 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gaca2741b6c05e9b8d34814c8da41b9094"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG1_3072_VALUE&#160;&#160;&#160;(0x00000061U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG1 3072 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gab809f2cf302a694e97151c15f1ecd178"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG1_4096_VALUE&#160;&#160;&#160;(0x00000081U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG1 4096 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga428d127a4c7ca3cb3f9ca6c5f598926b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG2_2048_VALUE&#160;&#160;&#160;(0x00000016U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG2 2048 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gadc343c3b1b289869f9d80c16d11e8296"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG2_3072_VALUE&#160;&#160;&#160;(0x00000016U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG2 3072 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5424da4f0e694d048bf1958cac68d912"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG2_4096_VALUE&#160;&#160;&#160;(0x00000016U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG2 4096 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga657535fb0fdef8833089462fb0001198"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG5_2048_VALUE&#160;&#160;&#160;(0x0000000AU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG3 2048 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gabc91f9d925d1a698ea47efd143ee76fc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG5_3072_VALUE&#160;&#160;&#160;(0x00000010U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG3 3072 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga1bb16e915f8ae8d239e5828517eebdb0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_CFG5_4096_VALUE&#160;&#160;&#160;(0x00000015U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>CFG3 4096 value. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga38e1b28752d6069910cf90fb422e9cca"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_ECDSA_RSA_SOFT_RESET&#160;&#160;&#160;(0xF1200040U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ECDSA/RSA soft reset address. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__qmode__apis.html#gab93e9d20b03a5821f0b533b3c0a1f681">XSecure_RsaExp()</a>, <a class="el" href="group__xsecure__rsa__qmode__apis.html#gae1a74baadcd5d96038076e38a6af64e1">XSecure_RsaExpCRT()</a>, and <a class="el" href="group__xsecure__rsa__qmode__apis.html#ga6d3412455d770af7b891c3c90df4dffd">XSecure_RsaExpopt()</a>.</p>

</div>
</div>
<a class="anchor" id="gad56c1ad7d5fadefa4f0fb466854b7036"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_FSBL_SIG_SIZE&#160;&#160;&#160;(512U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>FSBL signature size. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="gae3637356df5720621bbd9924fa45a8d8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_HASH_TYPE_SHA3&#160;&#160;&#160;(48U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>SHA-3 hash size. </p>

<p>Referenced by <a class="el" href="xsecure_8h.html#a17ffcc1179ee379019196d122403f8dc">XSecure_DataAuth()</a>, <a class="el" href="xsecure_8h.html#a6c51d7aa8a0db0c40a00a641d7aa4055">XSecure_PpkVerify()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>, and <a class="el" href="xsecure_8h.html#ae9ccb5dc051bf792ce88b8f3fe376122">XSecure_SpkAuthentication()</a>.</p>

</div>
</div>
<a class="anchor" id="gabef6161746737e2b747db7961bddfe3f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_KEY_PAIR_GEN_POLL_INTERVAL&#160;&#160;&#160;(100U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Key pair generation poll interval. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga164469228a4eea6357072fee975418de">XSecure_AddRsaKeyPairGenerationToScheduler()</a>.</p>

</div>
</div>
<a class="anchor" id="ga127677299bd2c7d46a4cf8941e91ccc3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_PRIME_FACTOR_MAX_P_SIZE&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__qmode__apis.html#gacba3eaa97a1cf39d9022dddcaded8e1b">XSECURE_RSA_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>256 bytes size of first prime factor(P) </p>

</div>
</div>
<a class="anchor" id="gae905dfaa14a252d9b935b0f5ce8e7583"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_PRIME_FACTOR_MAX_Q_SIZE&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__qmode__apis.html#gacba3eaa97a1cf39d9022dddcaded8e1b">XSECURE_RSA_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>256 bytes size of first prime factor(Q) </p>

</div>
</div>
<a class="anchor" id="ga3889ef0cd21d5b09ffa60be16ce88140"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_PRIME_FACTOR_P_SIZE&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>size of first prime factor(P) </p>

</div>
</div>
<a class="anchor" id="gaea22c8d9e551a75beb81099592d63ada"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_PRIME_FACTOR_Q_SIZE&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> &gt;&gt; 1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>size of first prime factor(Q) </p>

</div>
</div>
<a class="anchor" id="ga07736a55ec2f9d8242a46ee20fc9f7b6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_2048_KEY_SIZE&#160;&#160;&#160;(2048U/8U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 2048 key size. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>, <a class="el" href="group__xsecure__kat__server__apis.html#gaff9e6accc6dbd6922eda1a4d2322fdf6">XSecure_RsaPrivateDecryptKat()</a>, and <a class="el" href="group__xsecure__kat__server__apis.html#gac4ab51058f2ef18bcb5a1aedf95b83d8">XSecure_RsaPublicEncryptKat()</a>.</p>

</div>
</div>
<a class="anchor" id="ga87e50dc58dc742b7bb0a503d9da9010f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_2048_QUANT_SIZE&#160;&#160;&#160;(5U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA maximum quant size for 2048 bit key. </p>

</div>
</div>
<a class="anchor" id="gab5e03185e5083dafd48c34ec3860f13b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_2048_SIZE_WORDS&#160;&#160;&#160;(64)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 2048 Size in words. </p>

<p>Referenced by <a class="el" href="group__xsecure__kat__server__apis.html#gacd534322345d34248772d23a4ab90c7f">XSecure_GetKatRsaPrivateExp()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>, <a class="el" href="group__xsecure__kat__server__apis.html#gaff9e6accc6dbd6922eda1a4d2322fdf6">XSecure_RsaPrivateDecryptKat()</a>, and <a class="el" href="group__xsecure__kat__server__apis.html#gac4ab51058f2ef18bcb5a1aedf95b83d8">XSecure_RsaPublicEncryptKat()</a>.</p>

</div>
</div>
<a class="anchor" id="ga59620f1b6f6bde84528a793de12385c5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_3072_KEY_SIZE&#160;&#160;&#160;(3072U/8U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 3072 key size. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga94a80f11f44f1b6bacbfdc15a255f79f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_3072_QUANT_SIZE&#160;&#160;&#160;(2U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA maximum quant size for 3072 bit key. </p>

</div>
</div>
<a class="anchor" id="ga347aecc336477793453c4d4d7ff4883a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_3072_SIZE_WORDS&#160;&#160;&#160;(96)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 3072 Size in words. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga6ff2e0197483048fcc9e7c52416750c8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_4096_KEY_SIZE&#160;&#160;&#160;(4096U/8U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 4096 key size. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5f2670f692577853698a7590066e4448"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_4096_QUANT_SIZE&#160;&#160;&#160;(1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA maximum quant size for 4096 bit key. </p>

</div>
</div>
<a class="anchor" id="gaaf42b952c1d1cab97ba23e4c1a5f5ae6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_4096_SIZE_WORDS&#160;&#160;&#160;(128U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA 4096 Size in words. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gaed24e77892a61d31d934ec519c9a8d92">XSecure_RsaInitialize_64Bit()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gad840b41d180c177652a07d9f64759b38"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD1&#160;&#160;&#160;(0X00U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="gad840b41d180c177652a07d9f64759b38"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD1&#160;&#160;&#160;(0X00U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

</div>
</div>
<a class="anchor" id="ga26615ce99391eb47a32748d154a256b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD2&#160;&#160;&#160;(0X01U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga26615ce99391eb47a32748d154a256b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD2&#160;&#160;&#160;(0X01U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

</div>
</div>
<a class="anchor" id="ga92e8b443f7a35f7648b3e03c992365e4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD3&#160;&#160;&#160;(0XFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga92e8b443f7a35f7648b3e03c992365e4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD3&#160;&#160;&#160;(0XFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding Byte. </p>

</div>
</div>
<a class="anchor" id="gae58e8fcd45d583887e693c6569900161"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD_LENGTH&#160;&#160;&#160;(3U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS Byte Padding. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="gae58e8fcd45d583887e693c6569900161"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_BYTE_PAD_LENGTH&#160;&#160;&#160;(3U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS Byte Padding. </p>

</div>
</div>
<a class="anchor" id="gaafa59a9f17f72541503918edc46b049a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_CONTROL_EXP&#160;&#160;&#160;(0x01U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Exponentiation Opcode. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gaf6aa7128fa94bf8080ab386fbad49019"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_CONTROL_EXP_PRE&#160;&#160;&#160;(0x05U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Expo. </p>
<p>using R*R mod M </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="gaff1f1cf3b0d2fd6ec4db3c38c5a846b1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_DATA_VALUE_ERROR&#160;&#160;&#160;(0x2U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>for RSA private decryption data should be lesser than modulus </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga5f0529979a66b7619ea517a83788794a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_ECDSA_ZEROIZE_ERROR&#160;&#160;&#160;(0x80U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>for RSA zeroization Error </p>

</div>
</div>
<a class="anchor" id="gae602b8815f7d462cb8d71acd1518cc16"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_INVALID_PARAM&#160;&#160;&#160;(0x82U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalid Argument. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gaa7dd5cb6143f1767dbfce0cee845f014">XSecure_RsaCfgInitialize()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaed24e77892a61d31d934ec519c9a8d92">XSecure_RsaInitialize_64Bit()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga7c621f0e66a73464aefc9c725cb1b2b1">XSecure_RsaZeroize()</a>.</p>

</div>
</div>
<a class="anchor" id="gae602b8815f7d462cb8d71acd1518cc16"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_INVALID_PARAM&#160;&#160;&#160;(0x82U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Invalid Argument. </p>

</div>
</div>
<a class="anchor" id="gaef98b03d932368574ec1123184b9a9e4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__zynqmp__apis.html#ga347aecc336477793453c4d4d7ff4883a">XSECURE_RSA_3072_SIZE_WORDS</a> * 4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA default key size in bytes. </p>

<p>Referenced by <a class="el" href="group__xsecure__keyunwrap__server__apis.html#gaf1df351e91ee42e7c281b2e676ffda7b">XSecure_KeyUnwrap()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga7fe869dab6a634c2866f9ec26ee8cec0">XSecure_RsaOaepDecrypt()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gab519747faf9ccf8e016d20e5713838c9">XSecure_RsaOaepEncrypt()</a>, and <a class="el" href="group__xsecure__kat__server__apis.html#gaeef1675ed072c8187d88b630df7204c3">XSecure_RsaPwct()</a>.</p>

</div>
</div>
<a class="anchor" id="ga8430c1d49dac67e602bf5d2353391a12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_KEY_GEN_SIZE_IN_WORDS&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> / 4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA key generation size in words. </p>

</div>
</div>
<a class="anchor" id="ga7d26ce58d6af4dd85a0035b344866a6a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_KEY_STATUS_WAIT&#160;&#160;&#160;(1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA key status wait. </p>

</div>
</div>
<a class="anchor" id="gae6abb189863af8fdcc377b2a92080865"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_BUFF&#160;&#160;&#160;(6U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA RAM Write Buffers. </p>

</div>
</div>
<a class="anchor" id="ga59042ddf231be62c14ab4a7c62802f0b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_DB_SIZE_IN_BYTES</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code" href="group__xsecure__rsa__server__apis.html#ga1cf3919ee718dd93e02bb36a43e55cba">XSECURE_RSA_MAX_PS_SIZE_IN_BYTES</a>  + <a class="code" href="group__xsecure__mgf__server__apis.html#ga40f95b0f59b06abf8ee6dda379447069">\</a></div>
<div class="line"><a class="code" href="group__xsecure__mgf__server__apis.html#ga40f95b0f59b06abf8ee6dda379447069">						XSECURE_SHA3_HASH_LENGTH_IN_BYTES</a> + 1U)</div>
<div class="ttc" id="group__xsecure__mgf__server__apis_html_ga40f95b0f59b06abf8ee6dda379447069"><div class="ttname"><a href="group__xsecure__mgf__server__apis.html#ga40f95b0f59b06abf8ee6dda379447069">XSECURE_SHA3_HASH_LENGTH_IN_BYTES</a></div><div class="ttdeci">#define XSECURE_SHA3_HASH_LENGTH_IN_BYTES</div><div class="ttdoc">SHA3 Hash length in bytes. </div><div class="ttdef"><b>Definition:</b> xsecure_mgf.h:44</div></div>
<div class="ttc" id="group__xsecure__rsa__server__apis_html_ga1cf3919ee718dd93e02bb36a43e55cba"><div class="ttname"><a href="group__xsecure__rsa__server__apis.html#ga1cf3919ee718dd93e02bb36a43e55cba">XSECURE_RSA_MAX_PS_SIZE_IN_BYTES</a></div><div class="ttdeci">#define XSECURE_RSA_MAX_PS_SIZE_IN_BYTES</div><div class="ttdoc">RSA maximum PS size in bytes. </div><div class="ttdef"><b>Definition:</b> xsecure_plat_rsa.c:66</div></div>
</div><!-- fragment -->
<p>RSA maximum DB size in bytes. </p>

</div>
</div>
<a class="anchor" id="ga7208f94ae70d33d48b34e75b434c0073"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_KEY_GEN_SUPPORT&#160;&#160;&#160;(2U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum keys that needs to be generated. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga76632037ef8961e99b8b9b210d5f75f1">XSecure_GetRsaPrivateKey()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaa40ad2688c9e7d2e756a29fa88bfaa27">XSecure_GetRsaPublicKey()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga547d58774dd7e1821688203999e1b5e2">XSecure_RsaDestroyKeyInUse()</a>.</p>

</div>
</div>
<a class="anchor" id="ga4d44ea80e5d3318fa89cfb81c19a8bab"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_MSG_SIZE_IN_BYTES</td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">(<a class="code" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a> - \</div>
<div class="line">                                                (2U * <a class="code" href="group__xsecure__mgf__server__apis.html#ga40f95b0f59b06abf8ee6dda379447069">XSECURE_SHA3_HASH_LENGTH_IN_BYTES</a>) - 2U)</div>
<div class="ttc" id="group__xsecure__mgf__server__apis_html_ga40f95b0f59b06abf8ee6dda379447069"><div class="ttname"><a href="group__xsecure__mgf__server__apis.html#ga40f95b0f59b06abf8ee6dda379447069">XSECURE_SHA3_HASH_LENGTH_IN_BYTES</a></div><div class="ttdeci">#define XSECURE_SHA3_HASH_LENGTH_IN_BYTES</div><div class="ttdoc">SHA3 Hash length in bytes. </div><div class="ttdef"><b>Definition:</b> xsecure_mgf.h:44</div></div>
<div class="ttc" id="group__xsecure__rsa__server__apis_html_gaef98b03d932368574ec1123184b9a9e4"><div class="ttname"><a href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a></div><div class="ttdeci">#define XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</div><div class="ttdoc">RSA default key size in bytes. </div><div class="ttdef"><b>Definition:</b> xsecure_plat_rsa.h:67</div></div>
</div><!-- fragment -->
<p>RSA maximum message size in bytes. </p>

</div>
</div>
<a class="anchor" id="ga1cf3919ee718dd93e02bb36a43e55cba"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_PS_SIZE_IN_BYTES&#160;&#160;&#160;(<a class="el" href="group__xsecure__rsa__server__apis.html#ga4d44ea80e5d3318fa89cfb81c19a8bab">XSECURE_RSA_MAX_MSG_SIZE_IN_BYTES</a>)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA maximum PS size in bytes. </p>

</div>
</div>
<a class="anchor" id="gadd18fc8e8c833a9b50703479655a131a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_MAX_RD_WR_CNT&#160;&#160;&#160;(22U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>No of writes or reads to RSA RAM buffers. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gaf5b1250865b33d073498f0d29816d664">XSecure_RsaEcdsaZeroizeAndVerifyRam()</a>.</p>

</div>
</div>
<a class="anchor" id="gac68769cb4d2f865843c2e77b2b5c3fbd"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_PUB_EXP_SIZE&#160;&#160;&#160;(4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA public exponent size. </p>

<p>Referenced by <a class="el" href="group__xsecure__kat__server__apis.html#gaeef1675ed072c8187d88b630df7204c3">XSecure_RsaPwct()</a>.</p>

</div>
</div>
<a class="anchor" id="ga471ea882e22eda21835226bbd7f5f5fe"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_PUBLIC_EXPO_SIZE&#160;&#160;&#160;(4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Size of public key expo. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga792bca395c9fc54f30431664005fb637"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_PUBLIC_EXPONENT&#160;&#160;&#160;(0x10001U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>RSA public exponent value. </p>

</div>
</div>
<a class="anchor" id="gaeb1c90322fbfab2d67199e5a1b7221ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_RAM_DIGEST&#160;&#160;&#160;(2U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>bit for RSA RAM Digest </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga54df4ba49a902c189e6b829f70bf4c12"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_RAM_EXPO&#160;&#160;&#160;(0U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>bit for RSA RAM Exponent </p>

</div>
</div>
<a class="anchor" id="gafda03a0526dc76f9c6b01005ef59d12c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_RAM_MOD&#160;&#160;&#160;(1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>bit for RSA RAM modulus </p>

</div>
</div>
<a class="anchor" id="ga143c9f60ab09cc9145dcd03ad720957c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_RAM_RES_Q&#160;&#160;&#160;(5U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>bit for RSA RAM Result(Q) </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gaf5b1250865b33d073498f0d29816d664">XSecure_RsaEcdsaZeroizeAndVerifyRam()</a>.</p>

</div>
</div>
<a class="anchor" id="gae1c8324e032b5c9d15f811018284b13e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_RAM_RES_Y&#160;&#160;&#160;(4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>bit for RSA RAM Result(Y) </p>

</div>
</div>
<a class="anchor" id="gacba3eaa97a1cf39d9022dddcaded8e1b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_SIZE_IN_BYTES&#160;&#160;&#160;(512U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>512 bytes for 4096 bit data </p>

</div>
</div>
<a class="anchor" id="ga491f98d6cff7af27e53a60b8d50706ea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_STATE_MISMATCH_ERROR&#160;&#160;&#160;(0x84U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>State mismatch. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga491f98d6cff7af27e53a60b8d50706ea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_STATE_MISMATCH_ERROR&#160;&#160;&#160;(0x84U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>State mismatch. </p>

</div>
</div>
<a class="anchor" id="gab2f3464839888fbb08885a9edfa3de1e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_STATUS_DONE&#160;&#160;&#160;(0x1U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Operation Done. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga2a14eba16b0398959800e6d638c63447"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_STATUS_ERROR&#160;&#160;&#160;(0x4U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Error. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<a class="anchor" id="ga3946b65de00d2d5d0d829b8bade3c748"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_T_PAD_LENGTH&#160;&#160;&#160;(19U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga3946b65de00d2d5d0d829b8bade3c748"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_RSA_T_PAD_LENGTH&#160;&#160;&#160;(19U)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>PKCS T Padding. </p>

</div>
</div>
<a class="anchor" id="gae655880142d336ed6515f196e68a4074"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define XSECURE_TIMEOUT_MAX&#160;&#160;&#160;(0x1FFFFFU)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Recommended software timeout. </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga24e04211fc631eaf86b412fc9abe7b1c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__xsecure__rsa__server__apis.html#ga24e04211fc631eaf86b412fc9abe7b1c">XSecure_RsaKeyOpState</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga24e04211fc631eaf86b412fc9abe7b1cac6ccb393b8497af5e79d534f528abe87"></a>XSECURE_RSA_KEY_DEFAULT_STATE</em>&nbsp;</td><td class="fielddoc">
<p>Default state. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga24e04211fc631eaf86b412fc9abe7b1caa55c1eab894644e0f5b3410506fdf043"></a>XSECURE_RSA_KEY_INIT_STATE</em>&nbsp;</td><td class="fielddoc">
<p>Key initialized state. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga24e04211fc631eaf86b412fc9abe7b1caf4a0e971bca81263da9108061c8ff7c8"></a>XSECURE_RSA_KEY_GEN_STATE</em>&nbsp;</td><td class="fielddoc">
<p>Key generate state. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga24e04211fc631eaf86b412fc9abe7b1ca217467319e81eb7e6182a65a4a0d26e6"></a>XSECURE_RSA_KEY_READY_STATE</em>&nbsp;</td><td class="fielddoc">
<p>Key ready state. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gae6588655f860a271678b5a24946f0aa2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__xsecure__rsa__server__apis.html#gae6588655f860a271678b5a24946f0aa2">XSecure_RsaKeyStatus</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggae6588655f860a271678b5a24946f0aa2ad9950e80f504bd868c4243acf7840dd8"></a>XSECURE_RSA_KEY_FREE</em>&nbsp;</td><td class="fielddoc">
<p>RSA key is free. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggae6588655f860a271678b5a24946f0aa2ac4e3192cdb9e2c4efdc27756aeb4b9a9"></a>XSECURE_RSA_KEY_AVAIL</em>&nbsp;</td><td class="fielddoc">
<p>RSA key is available. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="gac58931a8d38bdc9dc4398b99c61d6977"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__xsecure__rsa__server__apis.html#gac58931a8d38bdc9dc4398b99c61d6977">XSecure_RsaOps</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Used for selecting the RSA operation. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggac58931a8d38bdc9dc4398b99c61d6977a6cea5b8237a7ef2b4e973ee824e8ba6c"></a>XSECURE_RSA_SIGN_ENC</em>&nbsp;</td><td class="fielddoc">
<p>0x0 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac58931a8d38bdc9dc4398b99c61d6977ab636361ce27fcaf256dacda0c41e29cd"></a>XSECURE_RSA_SIGN_DEC</em>&nbsp;</td><td class="fielddoc">
<p>0x1 </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="ga82451ab88c04cf87f08d6ca4a6e500fe"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__xsecure__rsa__server__apis.html#ga82451ab88c04cf87f08d6ca4a6e500fe">XSecure_RsaState</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Used for setting the state of RSA operation. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga82451ab88c04cf87f08d6ca4a6e500fea880658a3ea1baa2ef3a03304705e7d7f"></a>XSECURE_RSA_UNINITIALIZED</em>&nbsp;</td><td class="fielddoc">
<p>0x0 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065"></a>XSECURE_RSA_INITIALIZED</em>&nbsp;</td><td class="fielddoc">
<p>0x1 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga82451ab88c04cf87f08d6ca4a6e500fea880658a3ea1baa2ef3a03304705e7d7f"></a>XSECURE_RSA_UNINITIALIZED</em>&nbsp;</td><td class="fielddoc">
<p>RSA uninitialized value. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065"></a>XSECURE_RSA_INITIALIZED</em>&nbsp;</td><td class="fielddoc">
<p>RSA initialized value. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga164469228a4eea6357072fee975418de"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_AddRsaKeyPairGenerationToScheduler </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function adds periodic task of generation RSA key pair to scheduler. </p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success.</li>
<li>XSECURE_ERR_ADD_TASK_SCHEDULER If failed to add task to scheduler. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#gabef6161746737e2b747db7961bddfe3f">XSECURE_KEY_PAIR_GEN_POLL_INTERVAL</a>, and <a class="el" href="group__xsecure__common__apis.html#ga693c54d224d1fa8ca68b215023b2b359">XSecure_Printf</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__generic__server__apis.html#gae97f3300511e1fce60d35fac22781594">XSecure_Init()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga547d58774dd7e1821688203999e1b5e2">XSecure_RsaDestroyKeyInUse()</a>.</p>

</div>
</div>
<a class="anchor" id="gabc66468fdd66a559fa567f631fbae91c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 XSecure_GetRsaKeyInUseIdx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function returns RSA key inuse index. </p>
<p>API to destroy key pair that is in use.</p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>KeyInUse To indicate the key that is in use </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ggae6588655f860a271678b5a24946f0aa2ac4e3192cdb9e2c4efdc27756aeb4b9a9">XSECURE_RSA_KEY_AVAIL</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__keyunwrap__server__apis.html#gaf1df351e91ee42e7c281b2e676ffda7b">XSecure_KeyUnwrap()</a>.</p>

</div>
</div>
<a class="anchor" id="ga76632037ef8961e99b8b9b210d5f75f1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">XSecure_RsaPrivKey * XSecure_GetRsaPrivateKey </td>
          <td>(</td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>RsaIdx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function returns RSA private key. </p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>Pointer to XSecure_RsaPrivKey or NULL otherwise. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ga7208f94ae70d33d48b34e75b434c0073">XSECURE_RSA_MAX_KEY_GEN_SUPPORT</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__keyunwrap__server__apis.html#gaf1df351e91ee42e7c281b2e676ffda7b">XSecure_KeyUnwrap()</a>.</p>

</div>
</div>
<a class="anchor" id="gaa40ad2688c9e7d2e756a29fa88bfaa27"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">XSecure_RsaPubKey * XSecure_GetRsaPublicKey </td>
          <td>(</td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>RsaIdx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function returns RSA public key. </p>
<p>API to retrieve RSA KEY in use index.</p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>Pointer to XSecure_RsaPubKey or NULL otherwise. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ga7208f94ae70d33d48b34e75b434c0073">XSECURE_RSA_MAX_KEY_GEN_SUPPORT</a>.</p>

</div>
</div>
<a class="anchor" id="gad16ad6c530d0f3f8ed31e0c29ed634c5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaCfgInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function stores the base address of RSA core registers. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid parameter </li>
</ul>
</dd></dl>
<p>Validate the input arguments</p>
<p>Set RSA in use flag </p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gaed24e77892a61d31d934ec519c9a8d92">XSecure_RsaInitialize_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga547d58774dd7e1821688203999e1b5e2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaDestroyKeyInUse </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function destroys the RSA key in use. </p>
<p>API to add key pair generation to scheduler.</p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success.</li>
<li>XST_FAILURE On failure. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ga164469228a4eea6357072fee975418de">XSecure_AddRsaKeyPairGenerationToScheduler()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga7208f94ae70d33d48b34e75b434c0073">XSECURE_RSA_MAX_KEY_GEN_SUPPORT</a>.</p>

</div>
</div>
<a class="anchor" id="gaf5b1250865b33d073498f0d29816d664"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaEcdsaZeroizeAndVerifyRam </td>
          <td>(</td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>BaseAddress</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function clears and verifies whole RSA or ECDSA memory space. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">BaseAddress</td><td>BaseAddress of ECDSA or RSA controller.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On Success</li>
<li>XST_FAILURE On Failure </li>
</ul>
</dd></dl>
<p>Clears whole RSA or ECDSA RAM space</p>
<p>Verify whether whole RSA or ECDSA RAM space is zeroized or not </p>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#gadd18fc8e8c833a9b50703479655a131a">XSECURE_RSA_MAX_RD_WR_CNT</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga143c9f60ab09cc9145dcd03ad720957c">XSECURE_RSA_RAM_RES_Q</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga7c621f0e66a73464aefc9c725cb1b2b1">XSecure_RsaZeroize()</a>.</p>

</div>
</div>
<a class="anchor" id="gad533296d3fabf1afb69312994476a8cf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u8 * XSecure_RsaGetTPadding </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function returns PKCS padding as per the silicon version. </p>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XSecure_Silicon2_TPadSha3 </li>
</ul>
</dd></dl>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga097e8ed2f4933286ea5ef93210572b6b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaInitialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Mod</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ModExt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>ModExpo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function initializes a a <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> structure with the default values required for operating the RSA cryptographic engine. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Mod</td><td>A character Pointer which contains the key Modulus of key size </td></tr>
    <tr><td class="paramname">ModExt</td><td>A Pointer to the pre-calculated exponential (R^2 Mod N) value<ul>
<li>NULL - if user doesn't have pre-calculated R^2 Mod N value, control will take care of this calculation internally </li>
</ul>
</td></tr>
    <tr><td class="paramname">ModExpo</td><td>Pointer to the buffer which contains key exponent</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If initialization was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd><code>Modulus</code>, <code>ModExt</code> and <code>ModExpo</code> are part of partition signature when authenticated boot image is generated by bootgen, else the all of them should be extracted from the key </dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#gaed24e77892a61d31d934ec519c9a8d92">XSecure_RsaInitialize_64Bit()</a>.</p>

<p>Referenced by <a class="el" href="xsecure_8h.html#a17ffcc1179ee379019196d122403f8dc">XSecure_DataAuth()</a>, <a class="el" href="xsecure_8h.html#a55d3f721f0d915165ee23ead0d021857">XSecure_RsaCore()</a>, <a class="el" href="group__xsecure__kat__server__apis.html#gaff9e6accc6dbd6922eda1a4d2322fdf6">XSecure_RsaPrivateDecryptKat()</a>, <a class="el" href="group__xsecure__kat__server__apis.html#gac4ab51058f2ef18bcb5a1aedf95b83d8">XSecure_RsaPublicEncryptKat()</a>, <a class="el" href="group__xsecure__kat__server__apis.html#gaeef1675ed072c8187d88b630df7204c3">XSecure_RsaPwct()</a>, and <a class="el" href="xsecure_8h.html#ae9ccb5dc051bf792ce88b8f3fe376122">XSecure_SpkAuthentication()</a>.</p>

</div>
</div>
<a class="anchor" id="gaed24e77892a61d31d934ec519c9a8d92"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaInitialize_64Bit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Mod</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>ModExt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>ModExpo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function initializes a a <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> structure with the default values located at a 64-bit address required for operating the RSA cryptographic engine. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Mod</td><td>Address of the key Modulus of key size </td></tr>
    <tr><td class="paramname">ModExt</td><td>Address of the pre-calculated exponential (R^2 Mod N) value<ul>
<li>0 - if user doesn't have pre-calculated R^2 Mod N value, control will take care of this calculation internally </li>
</ul>
</td></tr>
    <tr><td class="paramname">ModExpo</td><td>Address of the buffer which contains key exponent</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If initialization was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd><code>Modulus</code>, <code>ModExt</code> and <code>ModExpo</code> are part of partition signature when authenticated boot image is generated by bootgen, else the all of them should be extracted from the key </dd></dl>

<p>References <a class="el" href="struct_x_secure___rsa.html#a025de108e57abdfadb4964fac57a0a9f">XSecure_Rsa::Mod</a>, <a class="el" href="struct_x_secure___rsa.html#af3cdc9b2018fd40f262355873a2a1b39">XSecure_Rsa::ModAddr</a>, <a class="el" href="struct_x_secure___rsa.html#ae3207b6dd8efa8fa08e253b6b79ecd6f">XSecure_Rsa::ModExpo</a>, <a class="el" href="struct_x_secure___rsa.html#af1962b2e4f9b304470a695e3d5274cff">XSecure_Rsa::ModExpoAddr</a>, <a class="el" href="struct_x_secure___rsa.html#a583c17e11e2eaf4c5eff1376d10b47fe">XSecure_Rsa::ModExt</a>, <a class="el" href="struct_x_secure___rsa.html#a8193b491caa2c772737ebf90823338c3">XSecure_Rsa::ModExtAddr</a>, <a class="el" href="struct_x_secure___rsa.html#a7603af531481b15be95ab6cf74a2dda6">XSecure_Rsa::RsaState</a>, <a class="el" href="struct_x_secure___rsa.html#a624a335d5d428b0affa26f286f46fc1a">XSecure_Rsa::SizeInWords</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaaf42b952c1d1cab97ba23e4c1a5f5ae6">XSECURE_RSA_4096_SIZE_WORDS</a>, <a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065">XSECURE_RSA_INITIALIZED</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gad16ad6c530d0f3f8ed31e0c29ed634c5">XSecure_RsaCfgInitialize()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga097e8ed2f4933286ea5ef93210572b6b">XSecure_RsaInitialize()</a>.</p>

</div>
</div>
<a class="anchor" id="ga987514bb3cfd057697b78f0d7b17321d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaIpiHandler </td>
          <td>(</td>
          <td class="paramtype">XPlmi_Cmd *&#160;</td>
          <td class="paramname"><em>Cmd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function calls respective IPI handler based on the API_ID. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Cmd</td><td>is pointer to the command structure</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If the handler execution is successful</li>
<li>XST_INVALID_PARAM If Cmd is NULL or API ID is invalid</li>
<li>XST_FAILURE If there is a failure </li>
</ul>
</dd></dl>
<p>Call the respective API handler according to API ID</p>
<ul>
<li>XSecure_RsaEncrypt</li>
<li>XSecure_RsaSignVerify </li>
</ul>

<p>References <a class="el" href="group__xsecure__common__apis.html#ga2f4a1a99096821d10b0719a4ded431d5">XSECURE_API</a>, <a class="el" href="group__xsecure__common__apis.html#gaa2f27ea2d621bbdeda76bad8109eb77b">XSECURE_API_ID_MASK</a>, <a class="el" href="group__xsecure__common__apis.html#gga48921cbba3a5713caf7d975bedbe36aca64400e366afc1fa1c96b991d9061dc50">XSECURE_API_RSA_PUBLIC_ENCRYPT</a>, <a class="el" href="group__xsecure__common__apis.html#gga48921cbba3a5713caf7d975bedbe36aca912e735422332f673c7eac208ba3927e">XSECURE_API_RSA_SIGN_VERIFY</a>, and <a class="el" href="group__xsecure__common__apis.html#ga693c54d224d1fa8ca68b215023b2b359">XSecure_Printf</a>.</p>

</div>
</div>
<a class="anchor" id="ga7fe869dab6a634c2866f9ec26ee8cec0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaOaepDecrypt </td>
          <td>(</td>
          <td class="paramtype">XSecure_RsaPrivKey *&#160;</td>
          <td class="paramname"><em>PrivKey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa_oaep_param.html">XSecure_RsaOaepParam</a> *&#160;</td>
          <td class="paramname"><em>OaepParam</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function decodes the given message and decrypts it using RSA OAEP. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">PrivKey</td><td>is pointer to the XSecure_RsaPrivKey instance. </td></tr>
    <tr><td class="paramname">OaepParam</td><td>is pointer to the <a class="el" href="struct_x_secure___rsa_oaep_param.html" title="Input and output parameters for RSA Optimal Asymmetric Encryption Padding scheme. ...">XSecure_RsaOaepParam</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success.</li>
<li>XSECURE_RSA_OAEP_INVALID_PARAM On invalid parameter.</li>
<li>XST_FAILURE On failure. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_secure___rsa_oaep_param.html#aec83801a64f9afa4244ceb8900611946">XSecure_RsaOaepParam::InputDataAddr</a>, <a class="el" href="group__xsecure__generic__server__apis.html#ga8fc10049426f8541ee568885a9d03902">XSECURE_BYTE_IN_BITS</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a>, <a class="el" href="group__xsecure__error__codes.html#ggacba8dc046b878afa42fdc63ce1dc2574a47cbf5e8493b601f5bc54ce0a2cc4145">XSECURE_RSA_OAEP_INVALID_PARAM</a>, and <a class="el" href="group__xsecure__rsa__qmode__apis.html#gae1a74baadcd5d96038076e38a6af64e1">XSecure_RsaExpCRT()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__keyunwrap__server__apis.html#gaf1df351e91ee42e7c281b2e676ffda7b">XSecure_KeyUnwrap()</a>, and <a class="el" href="group__xsecure__kat__server__apis.html#gaeef1675ed072c8187d88b630df7204c3">XSecure_RsaPwct()</a>.</p>

</div>
</div>
<a class="anchor" id="gab519747faf9ccf8e016d20e5713838c9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaOaepEncrypt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa_oaep_param.html">XSecure_RsaOaepParam</a> *&#160;</td>
          <td class="paramname"><em>OaepParam</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function encodes the given message using RSA OAEP and encrypts it. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance. </td></tr>
    <tr><td class="paramname">OaepParam</td><td>is pointer to the <a class="el" href="struct_x_secure___rsa_oaep_param.html" title="Input and output parameters for RSA Optimal Asymmetric Encryption Padding scheme. ...">XSecure_RsaOaepParam</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success.</li>
<li>XSECURE_RSA_OAEP_INVALID_PARAM On invalid parameter.</li>
<li>XST_FAILURE On failure. </li>
</ul>
</dd></dl>

<p>References <a class="el" href="struct_x_secure___rsa_oaep_param.html#aa512ea4ccd203ba5598c4de743b12d79">XSecure_RsaOaepParam::OutputDataAddr</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaef98b03d932368574ec1123184b9a9e4">XSECURE_RSA_KEY_GEN_SIZE_IN_BYTES</a>, <a class="el" href="group__xsecure__error__codes.html#ggacba8dc046b878afa42fdc63ce1dc2574a47cbf5e8493b601f5bc54ce0a2cc4145">XSECURE_RSA_OAEP_INVALID_PARAM</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__kat__server__apis.html#gaeef1675ed072c8187d88b630df7204c3">XSecure_RsaPwct()</a>.</p>

</div>
</div>
<a class="anchor" id="ga3c38edd112fb7b6799153ab9eabba178"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaOperation </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__xsecure__rsa__server__apis.html#gac58931a8d38bdc9dc4398b99c61d6977">XSecure_RsaOps</a>&#160;</td>
          <td class="paramname"><em>RsaOp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>KeySize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function handles the Public encryption and private decryption of RSA operations with provided inputs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Input</td><td>Address of the buffer which contains the input data to be encrypted/decrypted </td></tr>
    <tr><td class="paramname">Result</td><td>Address of buffer where resultant encrypted/decrypted data to be stored </td></tr>
    <tr><td class="paramname">RsaOp</td><td>Flag to inform the operation to be performed is either encryption/decryption </td></tr>
    <tr><td class="paramname">KeySize</td><td>Size of the key in bytes</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On success</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid parameter</li>
<li>XST_FAILURE On failure </li>
</ul>
</dd></dl>
<p>Validate the input arguments</p>
<p>Put Modulus, exponent, Mod extension in RSA RAM</p>
<p>Initialize MINV values from Mod.</p>
<p>Start the RSA operation. </p>

<p>References <a class="el" href="struct_x_secure___rsa.html#a43f0c9f61e8826ec3d3622ec3d2a166e">XSecure_Rsa::BaseAddress</a>, <a class="el" href="struct_x_secure___rsa.html#a3448138023856a4306b5c7cc2c55dbd8">XSecure_Rsa::EncDec</a>, <a class="el" href="struct_x_secure___rsa.html#a8193b491caa2c772737ebf90823338c3">XSecure_Rsa::ModExtAddr</a>, <a class="el" href="struct_x_secure___rsa.html#a624a335d5d428b0affa26f286f46fc1a">XSecure_Rsa::SizeInWords</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga3f74d8b1fdd3cb62e6b42f94477baea2">XSECURE_ECDSA_RSA_CFG0_2048_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga441252e98483a66e42885babef4a3a4f">XSECURE_ECDSA_RSA_CFG0_3072_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gad2c0edbea8d67db9377cd12a22645aa0">XSECURE_ECDSA_RSA_CFG0_4096_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae86c78b20bfdfe28377fae54d4359bb5">XSECURE_ECDSA_RSA_CFG1_2048_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaca2741b6c05e9b8d34814c8da41b9094">XSECURE_ECDSA_RSA_CFG1_3072_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gab809f2cf302a694e97151c15f1ecd178">XSECURE_ECDSA_RSA_CFG1_4096_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga428d127a4c7ca3cb3f9ca6c5f598926b">XSECURE_ECDSA_RSA_CFG2_2048_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gadc343c3b1b289869f9d80c16d11e8296">XSECURE_ECDSA_RSA_CFG2_3072_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga5424da4f0e694d048bf1958cac68d912">XSECURE_ECDSA_RSA_CFG2_4096_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga657535fb0fdef8833089462fb0001198">XSECURE_ECDSA_RSA_CFG5_2048_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gabc91f9d925d1a698ea47efd143ee76fc">XSECURE_ECDSA_RSA_CFG5_3072_VALUE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga1bb16e915f8ae8d239e5828517eebdb0">XSECURE_ECDSA_RSA_CFG5_4096_VALUE</a>, <a class="el" href="group__xsecure__generic__server__apis.html#ga448da91f94630d83a52c21b895455ebf">XSecure_ReleaseReset()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga07736a55ec2f9d8242a46ee20fc9f7b6">XSECURE_RSA_2048_KEY_SIZE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gab5e03185e5083dafd48c34ec3860f13b">XSECURE_RSA_2048_SIZE_WORDS</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga59620f1b6f6bde84528a793de12385c5">XSECURE_RSA_3072_KEY_SIZE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga347aecc336477793453c4d4d7ff4883a">XSECURE_RSA_3072_SIZE_WORDS</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga6ff2e0197483048fcc9e7c52416750c8">XSECURE_RSA_4096_KEY_SIZE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaaf42b952c1d1cab97ba23e4c1a5f5ae6">XSECURE_RSA_4096_SIZE_WORDS</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaafa59a9f17f72541503918edc46b049a">XSECURE_RSA_CONTROL_EXP</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaf6aa7128fa94bf8080ab386fbad49019">XSECURE_RSA_CONTROL_EXP_PRE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaeb1c90322fbfab2d67199e5a1b7221ac">XSECURE_RSA_RAM_DIGEST</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977ab636361ce27fcaf256dacda0c41e29cd">XSECURE_RSA_SIGN_DEC</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977a6cea5b8237a7ef2b4e973ee824e8ba6c">XSECURE_RSA_SIGN_ENC</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gab2f3464839888fbb08885a9edfa3de1e">XSECURE_RSA_STATUS_DONE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga2a14eba16b0398959800e6d638c63447">XSECURE_RSA_STATUS_ERROR</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga7c621f0e66a73464aefc9c725cb1b2b1">XSecure_RsaZeroize()</a>, <a class="el" href="group__xsecure__generic__server__apis.html#ga7d9385d1d7121998a9be90e90d3a8f7b">XSecure_SetReset()</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae655880142d336ed6515f196e68a4074">XSECURE_TIMEOUT_MAX</a>, <a class="el" href="group__xsecure__generic__server__apis.html#ga0ab39c362c3e2b0d6750187ce4e7c809">XSECURE_WORD_IN_BITS</a>, and <a class="el" href="group__xsecure__generic__server__apis.html#ga014b8298824e67a2e9fe8a5c8719f59a">XSECURE_WORD_SIZE</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="gac9580b4adbe4854231a0101d89046189"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaPrivateDecrypt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function handles the RSA decryption with the private key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Input</td><td>Pointer to the buffer which contains the input data to be decrypted </td></tr>
    <tr><td class="paramname">Size</td><td>Key size in bytes, Input size also should be same as Key size mentioned. Inputs supported are<ul>
<li>XSECURE_RSA_4096_KEY_SIZE,</li>
<li>XSECURE_RSA_2048_KEY_SIZE</li>
<li>XSECURE_RSA_3072_KEY_SIZE </li>
</ul>
</td></tr>
    <tr><td class="paramname">Result</td><td>Pointer to the buffer where resultant decrypted data to be stored</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If decryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid parameters</li>
<li>XSECURE_RSA_DATA_VALUE_ERROR If input data is greater than modulus</li>
<li>XSECURE_RSA_STATE_MISMATCH_ERROR If State mismatch is occurred</li>
<li>XST_FAILURE On RSA operation failure</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>RSA private key decryption data should be less than modulus. </dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ga955d5211bd63a9325ec0a93f9c49eaef">XSecure_RsaPrivateDecrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga955d5211bd63a9325ec0a93f9c49eaef"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaPrivateDecrypt_64Bit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function handles the RSA decryption for data available at 64-bit address with the private key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Input</td><td>Address of the buffer which contains the input data to be decrypted </td></tr>
    <tr><td class="paramname">Size</td><td>Key size in bytes, Input size also should be same as Key size mentioned. Inputs supported are<ul>
<li>XSECURE_RSA_4096_KEY_SIZE,</li>
<li>XSECURE_RSA_2048_KEY_SIZE</li>
<li>XSECURE_RSA_3072_KEY_SIZE </li>
</ul>
</td></tr>
    <tr><td class="paramname">Result</td><td>Address of buffer where resultant decrypted data to be stored</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If decryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid parameters</li>
<li>XSECURE_RSA_DATA_VALUE_ERROR If input data is greater than modulus</li>
<li>XSECURE_RSA_STATE_MISMATCH_ERROR If State mismatch is occurred</li>
<li>XST_FAILURE On RSA operation failure</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>RSA private key decryption data should be less than modulus. </dd></dl>

<p>References <a class="el" href="struct_x_secure___rsa.html#a025de108e57abdfadb4964fac57a0a9f">XSecure_Rsa::Mod</a>, <a class="el" href="struct_x_secure___rsa.html#af3cdc9b2018fd40f262355873a2a1b39">XSecure_Rsa::ModAddr</a>, <a class="el" href="struct_x_secure___rsa.html#ae3207b6dd8efa8fa08e253b6b79ecd6f">XSecure_Rsa::ModExpo</a>, <a class="el" href="struct_x_secure___rsa.html#af1962b2e4f9b304470a695e3d5274cff">XSecure_Rsa::ModExpoAddr</a>, <a class="el" href="struct_x_secure___rsa.html#a7603af531481b15be95ab6cf74a2dda6">XSecure_Rsa::RsaState</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gaff1f1cf3b0d2fd6ec4db3c38c5a846b1">XSECURE_RSA_DATA_VALUE_ERROR</a>, <a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065">XSECURE_RSA_INITIALIZED</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977ab636361ce27fcaf256dacda0c41e29cd">XSECURE_RSA_SIGN_DEC</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga491f98d6cff7af27e53a60b8d50706ea">XSECURE_RSA_STATE_MISMATCH_ERROR</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gac9580b4adbe4854231a0101d89046189">XSecure_RsaPrivateDecrypt()</a>.</p>

</div>
</div>
<a class="anchor" id="gaec27a8c75f48094d78c14c2a77bc4564"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaPublicEncrypt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u8 *&#160;</td>
          <td class="paramname"><em>Result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function handles the RSA encryption with the public key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Input</td><td>Pointer to the buffer which contains the input data to be encrypted </td></tr>
    <tr><td class="paramname">Size</td><td>Key size in bytes, Input size also should be same as Key size mentioned. Inputs supported are<ul>
<li>XSECURE_RSA_4096_KEY_SIZE</li>
<li>XSECURE_RSA_2048_KEY_SIZE</li>
<li>XSECURE_RSA_3072_KEY_SIZE </li>
</ul>
</td></tr>
    <tr><td class="paramname">Result</td><td>Pointer to the buffer where resultant decrypted data to be stored</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If encryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
<li>XSECURE_RSA_STATE_MISMATCH_ERROR If State mismatch is occurred</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>The Size passed here needs to match the key size used in the XSecure_RsaInitialize function </dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#gafc7c87fceab6593e002f7e3b9e15fccc">XSecure_RsaPublicEncrypt_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="gafc7c87fceab6593e002f7e3b9e15fccc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaPublicEncrypt_64Bit </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>Size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u64&#160;</td>
          <td class="paramname"><em>Result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function handles the RSA encryption for data available at 64-bit address with the public key components provided when initializing the RSA cryptographic core with the XSecure_RsaInitialize function. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance </td></tr>
    <tr><td class="paramname">Input</td><td>Address of the buffer which contains the input data to be encrypted </td></tr>
    <tr><td class="paramname">Size</td><td>Key size in bytes, Input size also should be same as Key size mentioned. Inputs supported are<ul>
<li>XSECURE_RSA_4096_KEY_SIZE</li>
<li>XSECURE_RSA_2048_KEY_SIZE</li>
<li>XSECURE_RSA_3072_KEY_SIZE </li>
</ul>
</td></tr>
    <tr><td class="paramname">Result</td><td>Address of buffer where resultant decrypted data to be stored</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If encryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
<li>XSECURE_RSA_STATE_MISMATCH_ERROR If State mismatch is occurred</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>The Size passed here needs to match the key size used in the XSecure_RsaInitialize function </dd></dl>

<p>References <a class="el" href="struct_x_secure___rsa.html#ae3207b6dd8efa8fa08e253b6b79ecd6f">XSecure_Rsa::ModExpo</a>, <a class="el" href="struct_x_secure___rsa.html#af1962b2e4f9b304470a695e3d5274cff">XSecure_Rsa::ModExpoAddr</a>, <a class="el" href="struct_x_secure___rsa.html#a7603af531481b15be95ab6cf74a2dda6">XSecure_Rsa::RsaState</a>, <a class="el" href="group__xsecure__rsa__zynqmp__apis.html#gga82451ab88c04cf87f08d6ca4a6e500feac22d33b1daba17116e89b8f4bd6de065">XSECURE_RSA_INITIALIZED</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga471ea882e22eda21835226bbd7f5f5fe">XSECURE_RSA_PUBLIC_EXPO_SIZE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ggac58931a8d38bdc9dc4398b99c61d6977a6cea5b8237a7ef2b4e973ee824e8ba6c">XSECURE_RSA_SIGN_ENC</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga491f98d6cff7af27e53a60b8d50706ea">XSECURE_RSA_STATE_MISMATCH_ERROR</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gab519747faf9ccf8e016d20e5713838c9">XSecure_RsaOaepEncrypt()</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gaec27a8c75f48094d78c14c2a77bc4564">XSecure_RsaPublicEncrypt()</a>.</p>

</div>
</div>
<a class="anchor" id="gafbbbb29f6e16f26aa9e648fba575b444"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaSignVerification </td>
          <td>(</td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Signature</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u8 *&#160;</td>
          <td class="paramname"><em>Hash</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>HashLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function verifies the RSA decrypted data provided is either matching with the provided expected hash by taking care of PKCS padding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Signature</td><td>Pointer to the buffer which holds the decrypted RSA signature </td></tr>
    <tr><td class="paramname">Hash</td><td>Pointer to the buffer which has the hash calculated on the data to be authenticated </td></tr>
    <tr><td class="paramname">HashLen</td><td>Length of Hash used For SHA3 it should be 48 bytes</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If decryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
<li>XST_FAILURE In case of mismatch </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#ga88c72694ec8259484002620958682dde">XSecure_RsaSignVerification_64Bit()</a>.</p>

</div>
</div>
<a class="anchor" id="ga88c72694ec8259484002620958682dde"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaSignVerification_64Bit </td>
          <td>(</td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>Signature</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const u64&#160;</td>
          <td class="paramname"><em>Hash</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">u32&#160;</td>
          <td class="paramname"><em>HashLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function verifies the RSA decrypted data located at a 64-bit address provided is either matching with the provided expected hash by taking care of PKCS padding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">Signature</td><td>Address of the buffer which holds the decrypted RSA signature </td></tr>
    <tr><td class="paramname">Hash</td><td>Address of the buffer which has the hash calculated on the data to be authenticated </td></tr>
    <tr><td class="paramname">HashLen</td><td>Length of Hash used For SHA3 it should be 48 bytes</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS If decryption was successful</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid arguments</li>
<li>XST_FAILURE In case of mismatch </li>
</ul>
</dd></dl>

<p>References <a class="el" href="group__xsecure__rsa__server__apis.html#gad56c1ad7d5fadefa4f0fb466854b7036">XSECURE_FSBL_SIG_SIZE</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae3637356df5720621bbd9924fa45a8d8">XSECURE_HASH_TYPE_SHA3</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gad840b41d180c177652a07d9f64759b38">XSECURE_RSA_BYTE_PAD1</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga26615ce99391eb47a32748d154a256b0">XSECURE_RSA_BYTE_PAD2</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga92e8b443f7a35f7648b3e03c992365e4">XSECURE_RSA_BYTE_PAD3</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae58e8fcd45d583887e693c6569900161">XSECURE_RSA_BYTE_PAD_LENGTH</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#ga3946b65de00d2d5d0d829b8bade3c748">XSECURE_RSA_T_PAD_LENGTH</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gad533296d3fabf1afb69312994476a8cf">XSecure_RsaGetTPadding()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#gafbbbb29f6e16f26aa9e648fba575b444">XSecure_RsaSignVerification()</a>.</p>

</div>
</div>
<a class="anchor" id="ga7c621f0e66a73464aefc9c725cb1b2b1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int XSecure_RsaZeroize </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="struct_x_secure___rsa.html">XSecure_Rsa</a> *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function clears whole RSA memory space. </p>
<p>This function clears stored exponent, modulus and exponentiation key components along with digest</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>Pointer to the <a class="el" href="struct_x_secure___rsa.html" title="The RSA driver instance data structure. ">XSecure_Rsa</a> instance</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS On Success</li>
<li>XSECURE_RSA_INVALID_PARAM On invalid parameter </li>
</ul>
</dd></dl>
<p>Zeroize and verify whole RSA RAM space </p>

<p>References <a class="el" href="struct_x_secure___rsa.html#a43f0c9f61e8826ec3d3622ec3d2a166e">XSecure_Rsa::BaseAddress</a>, <a class="el" href="group__xsecure__rsa__server__apis.html#gae602b8815f7d462cb8d71acd1518cc16">XSECURE_RSA_INVALID_PARAM</a>, and <a class="el" href="group__xsecure__rsa__server__apis.html#gaf5b1250865b33d073498f0d29816d664">XSecure_RsaEcdsaZeroizeAndVerifyRam()</a>.</p>

<p>Referenced by <a class="el" href="group__xsecure__rsa__server__apis.html#ga3c38edd112fb7b6799153ab9eabba178">XSecure_RsaOperation()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
